使用Django将模型数据从一个视图传递到另一个视图

时间:2020-06-13 02:11:54

标签: django django-models django-forms django-views

我是Django的新手,并且一直坚持这个问题。基本上,第1页会询问用户姓名和地址。我正在通过使用模型表单来执行此操作。我的模特看起来像这样

class Person(models.Model):
    first   = models.Charfield(max_length=100)
    last    = models.CharField(max_length=100)
    street  = models.CharField(max_length=100)
    state   = models.CharField(max_length=100)
    country = models.CharField(max_length=100)
    phone   = models.CharField(max_length=100)

    c_num   = models.CharField(max_length=100)
    c_exp   = models.CharField(max_length=100)

第一页上的表单如下:

class PersonForm(forms.ModelForm):
    class Meta:
        model = Person
        fields = ['first', 'last', 'street', 'state', 'country', 'phone']

所以我基本上使用表单在第一页上获得用户信息。然后更新我的模型,但将c_numc_exp留空。然后在第二页上,我要显示用户刚刚输入的信息,并提示输入c_xxx属性。但是,我不确定如何更新当前的Person对象。我将如何搜索所有对象以找到用户正在创建的当前对象?

1 个答案:

答案 0 :(得分:0)

我认为,一个好的解决方案是,一旦创建人,就可以将page2中的id重定向到page1

类似的事情应该起作用,

urlconf中的

url('/page2/(?P<user_id>[0-9]+)/', page2(), name='page2')

在第1页

return redirect('page2', user_id=new_person_id)