DjangoのFromからBootstrapのスタイルを変更する方法をご紹介します。
ここではUserモデルのdescriptionというフォームがテキストボックスだった場合を例に進めていきます。
このテキストボックスの高さを変更する際にBootstrapではrowsが使われていることが分かります。
この10になっている値を20に変えてテキストボックスの高さを2倍にします。
テキストボックスのスタイルをFormから変更する方法
Formクラスの def __init__
の中に self.fields['description'].widget.attrs.update({'rows' : '20'})
と書きます。
Formクラスの全体像はこのようになります。
Python
class UserForm(forms.ModelForm):
class Meta:
model = Template
fields = ['username', "email", "description"]
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields['description'].widget.attrs.update({'rows' : '20'})
そして、フォームをブラウザで確認するとこのように高さが2倍になっていることが確認できました。
.widget.attrs.update({'' : ''})
を使えばフォームに対していろいろな操作が行えるのでぜひ試してみてください^^
コメントを残す