Node
、Link
、およびのモデルがいくつかありMap
ます。マップにはlink_id
、node_a_id
、およびnode_b_id
フィールドがあります。Link
の 1 つのフォームと の 2つのフォームを表示していNode
ます。Map
入力した情報を関係を保存するモデルに保存するにはどうすればよいですか?
質問する
31 次
1 に答える
0
ModelForms を使用していて、マップにはリンクとノードを保存する必要があると仮定します。
したがって、最初にこのモデルを保存してから、マップ モデルを保存する必要があります。また、link_id、node_a_id、および node_b_id が models.ForeignKey(Link)... として定義されていると仮定します。
したがって、次のようになります。
# somehwere on your views.py ...
def my_display_forms_view(request):
if request.method == 'POST':
na = Node()
nb = Node()
link = Link()
na_form = NodeForm(request.POST, instance=na)
nb_form = NodeForm(request.POST, instance=nb)
link_form = LinkForm(request.POST, instance=link)
if na_form.is_valid() and nb_form.is_valid() and link_form.is_valid():
na = na_form.save()
nb = nb_form.save()
link = link_form.save()
map = Map(link_id=link, node_a_id=na, node_b_id=nb)
# maybe here fill more fields for map
map.save()
# eventually do some more stuff
else:
... generate new unbound forms here
return render_to_response(...)
于 2013-04-07T21:47:52.590 に答える