我在Eclipse中一直在研究Django项目。我正在使用 django-notifications库在Eclipse中运行良好。
但是,当我尝试在Eclipse之外构建项目时,我收到了这个错误:
CommandError: One or more models did not validate:
notifications.notification: 'recipient' defines a relation with the model
'auth.User', which has been swapped out. Update the relation to point at settings.AUTH_USER_MODEL.
这已经困扰了我很长一段时间了。
我已经看过类似于StackOverflow上的这个问题,但没有一个问题有一个有效的解决方案。
我很困惑为什么这在Eclipse中起作用而不是从终端起作用。
这是我的自定义用户模型,似乎导致了一个问题:
class User(AbstractUser):
coins = models.IntegerField(default=0)
rating = models.IntegerField(default=0)
profile_picture = models.ImageField(upload_to=upload_to)
然后这是settings.py中的设置:(该应用程序也称为用户)
AUTH_USER_MODEL = 'User.User'
为什么会发生此错误,我该如何解决?
答案 0 :(得分:1)
在django-notifications中0.6.0 https://github.com/brantyoung/django-notifications/blob/0.6/notifications/models.py:
recipient = models.ForeignKey(User, blank=False, related_name='notifications')
第87行。收件人是指auth.User,而不是您的自定义用户
您需要版本0.6.2或0.6.1