2015-04-19 3 views
0

есть две модели, User И Friends. Я хочу, чтобы два пользователя подружились, но это сработало.Модель Django «имеет более одного ForeignKey для«

консоль только что сказал,

django.core.management.base.CommandError: System check identified some issues:

ERRORS: : (admin.E202) 'api4android.Friends' has more than one ForeignKey to 'api4android.User'.

здесь код

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 

надеюсь, что мой бедный английский заставляет вас понять, что я имею в виду.

ответ

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 
+0

Оно не работает! : (admin.E202) «api4android.Friends» имеет более одного ForeignKey для «api4android.User». – twocucao

+0

какая версия django вы используете? –

+0

О, это ошибка admin.py, просто решите ее, THX – twocucao

5

В вашем admin.py вы должны указать fk_name для каждого отношения. Пример:

class FriendshipInline(admin.TabularInline): 
    model = Friendship 
    fk_name = "to_person" 

Подробнее: Django Docs

Смежные вопросы