我正在创建一个小型wiki应用并使用lastmodified_at属性(auto_now
)。现在我想算一下我的页面视图。
我的第一个想法是在我的wiki文章对象中添加一个字段,并在调用showArticle
视图时将其体现为一个。
不幸的是,这也会导致lastmodified_at
更新。
是否有另一种可能性,然后创建一个额外的表,其中包含article_id和计数器或删除/重建我的auto_now
属性?
谢谢!
答案 0 :(得分:2)
我很想有一个单独的模型来跟踪你的文章模型的FK页面浏览量。
e.g。
class ArticleViewCount(model):
counter = models.PositiveIntegerField()
article = models.OneToOneField(Article)
然后,您可以使用文章相关字段
从模板中调用页数答案 1 :(得分:0)
已经有几个答案:
例如,不要直接使用auto_now,覆盖保存 或者在保存之前更改字段的auto_now属性。
Temporarily disable auto_now / auto_now_add
如果您想保留auto_now,我将提供另一种脏方法:
class Temp(models.Model):
test = models.CharField(max_length=255)
updated = models.DateTimeFeild(auto_now=True)
def save_without_updated(self):
self._meta.get_field("updated").auto_now = False
# self.meta.auto_created = False
self.save()
# self.meta.auto_created = True
self._meta.get_field("updated").auto_now = True