0
數模型是沒有表的假模型,我不應該保存它。我需要的是將所有內聯Number.number保存爲Message.receiver。 但save_model首先調用並保存後消息cals保存剛剛通過的數字。我需要從Number inline模型訪問父消息模型。 我試圖從NumberAdmin重載save_model(),但沒有成功。 我知道什麼樣的設計不好,但它是遺留下來的。從django中的假內聯模型更新父模型admin
models.py
class Message(models.Model):
receiver = models.BigIntegerField()
text = models.TextField(blank=True, null=True)
class Meta:
db_table = 'messages'
def __str__(self):
return "{}".format(self.text)
class Number(models.Model):
message = models.ForeignKey("Message", related_name='receivers')
number = models.BigIntegerField()
class Meta:
verbose_name = "ReceiverNumber"
verbose_name_plural = "ReceiverNumbers"
managed = False
def __str__(self):
return self.number
admin.py
class NumberInline(admin.TabularInline):
model = Number
extra = 0
fields = ('number',)
class NumberAdmin(admin.ModelAdmin):
class Meta:
model = Number
class MessageAdmin(admin.ModelAdmin):
inlines = (ReceiverNumberInline,)
class Meta:
model = Message
Kirill謝謝你的回答。這不再重要了。 –