私は、REST APIを使用して、会社の既存の巨大なデータベースに情報を挿入するアプリケーションを構築しました。アプリケーションは、ユーザーが入力するWebフォームです。次に、私のアプリケーションは、ユーザーの応答をjsonにシリアル化し、それを使用して既存のデータベースに投稿リクエストを送信します。
私のDjangoアプリはSQLServerデータベースにも接続されており、models.pyで作成したフィールドにユーザーの応答を保存しています。
これを行うためのより良い方法はありますか?すべての情報を2回保存しているようです。スペースの無駄。
models.py
この特定のアプリケーションには何も必要ないと思います。個人的には、フォームに保存プロセスを処理させるアプローチが好きです。あなたはこのようなことをすることができます:
import json
from django import forms
class MyForm(forms.Form):
field1 = forms.CharField()
field2 = forms.IntegerField()
...
def save(self):
json_data = json.dumps(self.cleaned_data)
# insert code here to send the data to your REST API
form.save()
このフォームがではなくても、ビューはビュー内のメソッドを呼び出すだけで済みますModelForm
。
if request.POST:
form = MyForm(request.POST)
if form.is_valid():
form.save()
return redirect(success_url)
return render(request, 'form.html', {'form': form})
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加