我有两个模型,比如书和作者,如下:
class Author(models.Model):
name = models.CharField(max_length=100)
class Book(models.Model):
author = models.ForeignKey('Author')
latest_book = models.BooleanField(default=True)
现在,当我创建一个链接到作者的新书时,“latest_book”字段将自动设置为True,到目前为止这很好......
例如,假设我有一个三部曲的作者:Book1,Book2和Book3 - Book3是最新的。
我有两个问题: 1 - 如何在保存Book3时将Book1和Book2的“latest_book”字段设置为false? 2 - 如果要删除Book3,如何将Book2的“latest_book”字段设置为true?
我之前也使用过一种方法,但问题是我无法使用BookAdmin中的list_filter来显示所有作者的最新书籍,因为我从未找到如何在方法结果上使用list_filter ... 我需要进行这种过滤,所以我现在尝试使用模型字段
答案 0 :(得分:1)
很简单,你不会存储最新的书,你可以把它作为作者的方法或属性,可以进行查询来检索它
sudo echo "address host" >> /etc/hosts
-bash: /etc/hosts: Permission denied
将逻辑存储到数据库中是一个坏主意,它应该只存储数据。