2015-06-15 59 views
2

我有一个django模型和一个ModelForm。该模型有大约10个字段,但我只想为用户展示一些ModelForm。所以我有这样的事情:将字段添加到模型中的django ModelForm,但不是以表格形式

class Create_EventForm(ModelForm): 
    class Meta: 
     model = Event 
     fields = ['event_name','event_datetime','event_venue','event_url','event_tags','event_zip','event_category','event_description'] 

但是,我不能创建一个基于这些数据的对象,因为仍然缺少字段。当我通过邮寄方式收到的数据,我认为我做的其中之一:

if request.user.is_authenticated: 
     if request.POST: 
      f = Create_EventForm(request.POST) 
      if f.is_valid(): 
       ne = f.save() 

我想要做的是f.save前右()我想基于现有的数据我必须做的查找拉入模型所需的其他数据并创建对象。任何想法如何做到这一点?

回答

2

commit=False保存表格,编辑返回的实例,然后将其保存到数据库。

if request.POST: 
    f = Create_EventForm(request.POST) 
    if f.is_valid(): 
     event = f.save(commit=False) 
     event.other_value = lookup_value() 
     event.save() 

看到该文档,对ModelFormsave method获取更多信息。

+0

不错。谢谢。 – browskie

相关问题