У меня есть простая модель Post в моем приложении django:
class Post(models.Model):
category = models.CharField(max_length=10, choices=choices)
message = models.CharField(max_length=500)
user = models.ForeignKey(User, editable=False)
Я хотел бы реализовать функцию, позволяющую анонимным пользователям создавать сообщения с псевдонимами.К сожалению, django не позволяет вам сохранить экземпляр AnonymousUser как иностранный ключ для класса Post.
Я думал о добавлении «фиктивной» записи пользователя в базу данных, которая представляет анонимного пользователя (id = 0или отрицательное число, если это возможно), которое будет использоваться для всех сообщений без пользователя.И если оно присутствует, поле имени, которое можно обнулять, будет использоваться для представления псевдонима анонимного пользователя.
Это решение кажется мне немного хакерским.Есть ли более чистое, более эффективное решение?