Поле "многие ко многим" или внешний ключ для таблицы отчетов
У меня есть пользователи, о которых может быть составлен отчет, и мне нужно сохранить информацию об отчете. Поэтому моя модель пользовательского отчета выглядит следующим образом
class UserReportLog(models.Model):
reported_by = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL, null=True)
reported_at = models.DateTimeField(auto_now_add=True)
нужно ли мне добавить еще один внешний ключ к пользователю, о котором было сообщено? что сделает это
class UserReportLog(models.Model):
reported_user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL, null=True)
reported_by = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.SET_NULL, null=True)
reported_at = models.DateTimeField(auto_now_add=True)
В настоящее время в модели пользователя есть поле "многие ко многим"
userReportBy = models.ManyToManyField(
UserReportLog, related_name="userReported", blank=True
)
Я не уверен, какая практика лучше