不可逆な毎日ブログ

2度と過ごすことのない毎日をつらつらと・・・

ForeignKeyとForm(2)

form.save(commit=False)

した場合、Formに含まれるFieldは全て対象になる(あってるかな?)。
だから、Formに含まれているFieldで、ForeignKeyが含まれている場合、
exclude属性で排除しておく必要があるようだ。

from django import forms
from cman.models import Material

class MaterialForm(forms.ModelForm):
  class Meta:
    model = Material

class MaterialFormEx(forms.ModelForm):
  class Meta:
    model = Material
    exclude = ('project','storage',)

しかし、外してしまうとFormで表示されないので、別に作成することで
回避できた。これであっているのだろうか?