0
我有几个模型 - Node
,Link
和Map
。地图有link_id
,node_a_id
和node_b_id
字段。我正在显示Link
的一个表单,以及Node
的两个表单。如何将输入的信息保存在将存储关系的Map
模型中?在Django中使用多个表单
我有几个模型 - Node
,Link
和Map
。地图有link_id
,node_a_id
和node_b_id
字段。我正在显示Link
的一个表单,以及Node
的两个表单。如何将输入的信息保存在将存储关系的Map
模型中?在Django中使用多个表单
我假设你在使用ModelForms,并且地图需要保存链接和节点。
所以首先你需要保存这些模型,然后保存地图模型。我还假设,即link_id,node_a_id和node_b_id被定义为models.ForeignKey(链接)...
所以它看起来财产以后这样的:
# 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(...)