私は今怒ります-新しいチームインスタンスを作成できませんでした。Djangoは常にエラーを表示します:'Team' instance needs to have a primary key value before a many-to-many relationship can be used.
これが私のモデルです:
from django.contrib.auth.models import User
from django.db import models
class Team(models.Model):
name = models.CharField(max_length=10)
members = models.ManyToManyField(User)
def save(self, *args, **kwargs):
if self.pk:
# for later use
pass
super(Team, self).save(*args, **kwargs)
今、私は新しいチームを作りたいです...
from django.contrib.auth.models import User
from models import Team
user_obj = User.objects.get(pk=1)
new = Team()
new.name = 'aaa'
new.save()
new.members.add(user_obj)
誰かが間違いを見ることができますか?
編集 私はドキュメントとこの(非常に素晴らしい)答えを読みました多対多のフィールドを持つDjangoモデルのオブジェクトを作成する方法は?-まだ何が悪いのか理解できません