2013-10-10 25 views
0

我有2款, 「蒂達」 和我的自定義 「MYUSER」Django的保存多對多使用自定義的usermodel

class MyUser(AbstractBaseUser): 
    email = models.EmailField(
     verbose_name='email address', 
     max_length=255, 
     unique=True, 
     db_index=True, 
    ... 



tienda(models.Model) 
... 
user = ManytoManyfield(MyUser) 

然後,我form.py是

addtiendaform(ModelForm) 
class Meta: 
     model = tienda 
     fields = ('field1','field2',etc) 
     exclude = ('user',) 

終於,我的看法是:

from django.contrib.auth import get_user 

tiendaview(request) 
     id = get_user() 
    if request.method == 'POST': 
     tienda_form = addtiendaform(request.POST) 
     if tienda_form.is_valid(): 
      p = tienda_form.save(commit=False) 
      p.user = id 
      p.save() 
      tienda_form.save_m2m() 

但結果是錯誤的:tienda需要一個值之前可以使用manytomany關係。

there's在我的代碼中的錯誤?請,如果我需要修改的東西告訴我

+0

請發表您確切的代碼..和堆棧跟蹤 – karthikr

回答

0

is_valid是一種方法,不是一個變量。嘗試:

if tienda_form.is_valid(): 

Theres不知道,如果這是你真正的錯誤,你會得到,但這是一個錯誤。 (您將需要發佈您的堆棧跟蹤我找出你真正的錯誤。)

+0

遺憾,是沒問題的,我忘了寫「()」,我的錯誤是sintax – Jmint

+0

那麼請發佈你的錯誤和堆棧跟蹤。 – jproffitt

+0

謝謝,我已經完成了 – Jmint

相關問題