我收到以下錯(cuò)誤: dsapi.Profile.user: (fields.E304) Reverse accessor for 'Profile.user' clashes with reverse accessor for 'Profile.user'. HINT: Add or change a related_name argument to the definition for 'Profile.user' or 'Profile.user'.dsapi.Profile.user: (fields.E305) Reverse query name for 'Profile.user' clashes with reverse query name for 'Profile.user'.我的所有研究都表明可以related_name為每個(gè)問題創(chuàng)建一個(gè)。但就我而言,它告訴我反向訪問器本身有問題。這里有人有什么想法嗎?下面是我的 models.py 文件中有問題的代碼。import uuidfrom django.db import modelsfrom django.contrib.auth.models import Userfrom django.db.models.signals import post_savefrom django.dispatch import receiverclass DsapiModel(models.Model): id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) created_at = models.DateTimeField(auto_now_add=True, editable=False) updated_at = models.DateTimeField(auto_now=True, editable=False) class Meta: abstract = Trueclass Profile(DsapiModel): """ Extend User model using one-to-one link Save a query using users = User.objects.all().select_related('profile') """ user = models.OneToOneField(User, on_delete=models.CASCADE) favorite_sites = models.ManyToManyField(Site) def __str__(self): return self.user.username@receiver(post_save, sender=User)def create_user_profile(sender, instance, created, **kwargs): if created: Profile.objects.create(user=instance)@receiver(post_save, sender=User)def save_user_profile(sender, instance, **kwargs): instance.profile.save()
1 回答

皈依舞
TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超3個(gè)贊
該錯(cuò)誤表明Profile <-> User
您的項(xiàng)目中存在多個(gè)關(guān)系。
任意,它們之間可以有盡可能多的關(guān)系,但是,它們related_name
必須是不同的。
這是一篇 SO 帖子,可以幫助您理解related_name
添加回答
舉報(bào)
0/150
提交
取消