Я занимаюсь разработкой проекта django.Я создал несколько приложений, некоторые из которых относятся к пользовательской модели, например, у меня есть приложение каналов, которое обрабатывает пользовательские каналы, и другое приложение, которое имеет дело с дополнительными данными пользователя, такими как возраст, контакты и друзья.для каждого из них я создал таблицу, которая должна быть подключена к модели User, которую я использовал для хранения и аутентификации пользователей.
Я нашел два способа решения этой проблемы.Один из них заключается в расширении модели User таким образом:
ModelName(User):
friends = models.ManyToMany('self')
.....
Второй заключается в добавлении внешнего ключа в новую таблицу следующим образом:
ModelName(models.Model):
user = models.ForeignKey(User, unique=True)
friends = friends = models.ManyToMany('self')
......
Не могу решитьчто использовать в этом случае.другими словами, каковы основные различия между ними?