class A(Model):
to_b = ManyToManyField('B', blank=True, through='AtoB')
class B(Model):
to_a = ManyToManyField('A', blank=True, through='AtoB')
class AtoB(Model):
a = ForeignKey('A', on_delete=CASCADE)
b = ForeignKey('B', on_delete=CASCADE)
usr = ForeignKey(settings.USER, on_delete=CASCADE)
# some other fields
私はdjangoアプリケーションを作っています。
これは私のmodels.pyにあるものとおおよそ同等です
私はそこに追加データを格納する必要があるので、別のモデルを通過するにはAとBの間にm2mの関係が必要です。
問題があります - モデルのインスタンスを私のカスタムビューに保存しようとすると、との関係Bのインスタンスは保存されているかどうかにかかわらず保存されません。 私がhttp://127.0.0.1:8000/adminに行って、のインスタンスを作成しようとすると、Bとの関係を選択するための適切なフィールド(<select multiple>
だと思います)が表示されません。
関係が保存されず、/ adminに表示されない理由を教えてもらえますか?m2m関係はdjangoに表示されず保存されません
class Create(CreateView):
model = None # A or B
template_name = 'something.html'
def form_valid(self, form):
self.object = form.save(commit=False)
form.save()
return HttpResponseRedirect(self.get_success_url())
urls.pyに私はこのような追加の引数を指定します:仕事に行くのではありません views.Create.as_view(model=models.A, fields=['to_b'])
してください。 –
完了、お問い合わせください – Rob