2
我有一個包含多個步驟的系統。每一步都會增加一個對象實例。 我只想在最後一步中將實例保存在數據庫中,其他人只是更新我在會話中保存的實例。在保存到數據庫之前在會話中處理實例
我的模型類,似乎是這樣的:
class Proposta(models.Model):
Modelo = models.ForeignKey("ModeloVersao", verbose_name="Modelo")
Pacotes = models.ManyToManyField("PacoteModelo", null=True, blank=True)
Opcionais = models.ManyToManyField("ItemModelo", null=True, blank=True)
RevestimentoInterno = models.ForeignKey("RevestimentoInternoModelo", verbose_name="Revestimento Interno")
Cor = models.ForeignKey("CorModelo")
CorSecundaria = models.ForeignKey("CorModeloSecundaria", verbose_name="Cor secundária", null=True, blank=True)
Data = models.DateTimeField(auto_now_add = True)
Status = models.CharField("Status", choices=STATUS_PROPOSTA, max_length=10)
Cliente = models.ForeignKey("Cliente")
這裏是我的問題: 當我嘗試添加或檢索M2M領域它顯然拋出一個ValueError與消息「Proposta」實例都需要有一個主在可以使用多對多關係之前的關鍵值。
我成功通過創建pk = 0的obj實例來獲得想要的結果,但是我確定它不是最好的方法,如果有的話。
確實存在這樣做的方式,而不會像這樣作弊。
任何幫助將是偉大的。
感謝