我有一个这样的模型:
class Project (models.Model):
''' Defines a project '''
user = models.ForeignKey(
Profile,
on_delete = models.CASCADE
)
...
name = models.CharField (
verbose_name = _('Project Title'),
max_length = 100
)
dt_created = models.DateTimeField(editable = False)
dt_lastmod = models.DateTimeField(blank=True, null=True)
objects = ProjectManager()
tags = TaggableManager()
class Meta:
ordering = ["-id"]
def __str__(self):
return u'%s' % (self.name)
def save(self, *args, **kwargs):
if not self.id:
self.dt_created = timezone.now()
self.dt_lastmod = timezone.now()
super(Project, self).save(*args, **kwargs)
def get_absolute_url(self):
return reverse('view-project', kwargs={'slug': self.slug})
通过user
字段链接到模型的“用户”登录后,将保存模型并重置dt_lastmod。
为什么?如何停止这种行为?
答案 0 :(得分:0)
回答这个问题以将其关闭。
问题是我在其他地方设置了一个信号,该信号正在加载和保存的用户身上(因为last_login正在更改),并且正在对此进行一些处理,而仅当特定字段发生更改时才需要处理。