0

私はマッチモデルを持っています:

class Match(models.Model):
  base_f = models.CharField(max_length=255)
  base_v = models.IntegerField()
  dest_f = models.CharField(max_length=255)
  dest_v = models.IntegerField()

モデルからモデルフォームを作成しましたMatch

class MatchForm(forms.ModelForm):
   class Meta:
       model = Match
       widgets = {
           'base_f':forms.Select(choices=base_fs, attrs={'class':'base_f'}),
           'base_v':forms.Select(attrs={'class':'dest_v'}),
           'dest_f':forms.Select(choices=dest_fs, attrs={'class':'dest_f'}),
           'dest_v':forms.Select(attrs={'class':'dest_v'}),
        }

form.save()は、このモデルフォームで正常に機能します。でも使いたいですSelectMultiple。ただし、form.save()は、以下の形式のデータベースにデータを追加しません。

class MatchForm(forms.ModelForm):
   class Meta:
       model = Match
       widgets = {
           'base_f':forms.Select(choices=base_fs, attrs={'class':'base_f'}),
           'base_v':forms.SelectMultiple(attrs={'class':'dest_v'}),
           'dest_f':forms.Select(choices=dest_fs, attrs={'class':'dest_f'}),
           'dest_v':forms.SelectMultiple(attrs={'class':'dest_v'}),
        }

djangoでCharFiledを使用してSelectMultipleモデルを使用できますか?

前もって感謝します

4

1 に答える 1

0

CharField に複数の値を格納することはできません。CharField に選択肢を提供し、1 つの選択肢を格納できますが、複数の選択肢を格納することはできません。

複数の値を格納する必要がある場合は、ManyToMany フィールドの複数のインスタンスを格納するモデルを作成する必要があります。

于 2012-07-27T15:37:27.367 に答える