可能是一個愚蠢的問題,但我不知道如何處理這個'正確的'。django - 如何保存表單(不是modelForm)
我用一些領域得到了一個正常的形式。 我可以插入數據沒有問題。 當我想編輯一條記錄時,我使用「model_to_dict」功能來填充表單。 編輯一條記錄後,我想保存它,這裏我的問題開始了。
django文檔說,模型根據pk值自動創建或更新記錄。如果pk值存在,則爲更新,否則爲插入。 所以我創造了這個保存功能:
def save(self, primary_key=0):
mymodel = Somemodel(pk=primary_key,
samplefield=self.cleaned_data['samplefield'],
)
mymodel .save()
print 'PK:'+str(d.pk)
# Handle the MultipleChoiceField's
for x in self.cleaned_data['paymentMethod']:
x.mymodel_set.add(d)
所以,這時候我編輯的記錄工作正常。 但是,當我插入一條新記錄時,它插入正常,但mymodel.id = 0這意味着我無法保存MultipleChoiceFields的關係。
所以我想知道這是否是處理這個問題的好方法? 保存模型後,爲什麼mymodel.id = 0?
偉大的工程!非常感謝;) – Ben 2010-01-23 10:57:07