一意のオブジェクトを作成したい (同じフィールドを持つ別のインスタンスは存在できませんでした)。このオブジェクトには、一意にする責任がある多対多の関係があります。
オブジェクトはメッセージのスレッドであり、このスレッドは 2 人のユーザー間の会話です (実際には、多対多フィールドを使用しているため、より多くのユーザー間で発生する可能性がありますが、関心があるのは 2 人のユーザー間のみです)。
class Thread(models.Model):
users = models.ManyToManyField(User, null=True,blank=True, related_name='threads')
class Mensaje(models.Model):
thread = models.ForeignKey(Thread, related_name='mensajes')#messages
ユーザーが別のユーザーにメッセージを送信すると、スレッドが存在しない場合はスレッドが作成され、存在する場合はメッセージがこのスレッドに関連付けられます。
私はそのようなことを試みています:
thread = Thread.objects.get_or_create( users= [user1, user2])
しかし、次の例外があります。
Exception Value: int() argument must be a string or a number, not 'list'
助言がありますか?
ありがとう。