2

オートコンプリートという名前のクラスを選択したクラスの1つに追加しようとしています。

class MyForm(ModelForm):
    class Meta:
        model = MyModel
        exclude = ['user']

    def __init__(self, user, *args, **kwargs):
        super(MyForm, self).__init__(*args, **kwargs)
        self.fields['specie'].queryset = Specie.objects.all(attrs={'class':'autocomplete'})

上記のコードに基づいて私は得ますall() got an unexpected keyword argument 'attrs'

4

1 に答える 1

7

以下に示すように既存のコードを編集して、再試行してください。

self.fields['specie'].queryset = Specie.objects.all()
self.fields['specie'].widget.attrs['class'] = 'autocomplete'

説明:最初の行はqueryset、フィールドの、つまり選択する値を設定します。右側は、のすべてのオブジェクトをフィルタリングしますSpecie。HTML / CSS属性は、ここでは関連性がありません。2行目は、特定のCSSクラスを使用するようにフィールドをレンダリングするために使用されるウィジェットに指示します。

于 2010-08-21T09:04:30.900 に答える