2017-04-06 21 views
0

私のフォームを少しスタイリングしようとしていて、このwidget_tweaksを見つけました。私はそれをインストールし、今はそれぞれのフォームタグにアクセスして、それらにCSSクラスを与えることができますが、フォームを提出しようとすると動作しません。ページがちょうど再読み込み中ですが、何も起こりません...モデルを変更したり、ビューを書き直さなければならないのですか?誰かが私を助けることを願っています。フォームはwidget_tweaks djangoでアップロードされません

{% load widget_tweaks %} 
<form name="form" method='POST' enctype='multipart/form-data'> 
{% csrf_token %} 
{% for field in form %} 
    <div class="md-form-group float-label"> 
    {% render_field field class="md-input" %} 
    <label>{{ field.label_tag }}</label> 
</div> 
{% endfor %} 
<input type="submit" class="btn btn-default" value='Create Post' /> 

</form> 

私は{{形}}すべてが報復を除いて動作します私は、タグのスタイルを設定することはできません使用して...

すべてのコメントは大歓迎です。

+0

現在のページに投稿していますか?そうでない場合は、あなたの行動のURLがfromタグ – dentemm

答えて

0

{{ form }}と動作する場合は、ビューコードを変更せずにウィジェット調整を行う必要があります。

編集:

widget_tweaksにクラスを追加するための正しい方法である:

{% render_field field_name class+="css_class_1 css_class_2" %} 

それとも

{{ form.field_name|add_class:"css_class_1 css_class_2" }} 

かつ完全であることを:あなたは{{手動で追加することによって、エラーを表示することができますfield.errors}}エラーメッセージを表示するフィールドの場合

+0

にありません。画像は別のページにはありません。私は{%load widget_tweaks%}と協力しました。 タイトル:{{form.title | add_class: ""}}これで何とかしています。私は何かをアップロードしようとするときに、このフィールドのようなメッセージを受け取らないということだけが、ページをリロードするということが奇妙なことです。とにかくおかげです。 – hansTheFranz

+0

ああ、クラスはadd_classフィルタで追加する必要があります。エラーメッセージが表示されない理由は、widget_tweaksを使用するときに手動で追加する必要があるためです。すべてのフィールドには{{field.errors}}というエラー属性が表示されます。エラー属性をループとしてループすることができます。 – dentemm

+0

@Petter Friberg:render_fieldテンプレートタグを使ってクラスを追加するように私の答えを編集しました** class + = "" **が必要です – dentemm

関連する問題