Django模型"有多个ForeignKey"

two*_*cao 5 python django

有两种型号,UserFriends.我想让两个用户结交朋友,但确实有用.

控制台刚才说,

django.core.management.base.CommandError:系统检查发现了一些问题:

错误::(admin.E202)'api4android.Friends'对'api4android.User'有多个ForeignKey.

这是代码

class Friends(models.Model):
    user = models.ForeignKey(User, null=True, related_name='user')
    friend = models.ForeignKey(User, null=True, related_name='friend')
    note_name = models.CharField(max_length=20)

def __str__(self):  
    return self.note_name
Run Code Online (Sandbox Code Playgroud)

希望我可怜的英语让你理解我的意思.

NMC*_*NMC 18

在您的admin.py中,您必须为每个关系指定fk_name.例:

class FriendshipInline(admin.TabularInline):
    model = Friendship
    fk_name = "to_person"
Run Code Online (Sandbox Code Playgroud)

更多信息: Django Docs


Chi*_*mar 0

改成这样

class Friends(models.Model):
    user = models.ForeignKey(User, null=True)
    friend = models.ForeignKey(User, null=True, related_name='friend')
    note_name = models.CharField(max_length=20)

def __str__(self):  
    return self.note_name
Run Code Online (Sandbox Code Playgroud)