2017-10-31 2 views
0

を、私はそれがそのように動作するようにしたいので、私はサプライヤーのフィールドに選択し、ドロップダウンボックスを作ったが、それはエラーを生成します。Enter a list of valuesジャンゴ - 値のリストを入力します - のManyToManyField

私のモデル

class Product(models.Model): 
    name = models.Charfield(max_length=250) 
    supplier = models.ManytoManyField(Supplier) 

私フォーム:それはエラーを表示し

class ProductForm(forms.ModelForm): 

    class Meta: 
     model = Product 
     fields = ['name', 'supplier'] 
    widgets = { 
     'supplier': forms.Select() 
    } 

def clean_supplier(self): 
    return [self.cleaned_data['supplier']]] 

:値のリストを入力します

+0

のManyToManyFieldは複数の値ではない単一のものを選択するためのものです。 –

+0

Djangoに* ManytoManyField *というようなものはありません。コードでエラーが発生するはずです。しかし、あなたは*多くの** T ** oManyField *を試みるかもしれません。 – cezar

答えて

0

ドロップダウンは複数選択をサポートしていません。CheckboxSelectMultipleを使用してください。

class ProductForm(forms.ModelForm):

class Meta: 
    model = Product 
    fields = ['name', 'supplier'] 
widgets = { 
    'supplier': forms.CheckboxSelectMultiple() 
} 

DEF clean_supplier(自己): リターン[self.cleaned_data [ 'サプライヤー']]]

関連する問題