2017-05-26 9 views
0

私はそれが動作するネイティブレジスタの形式を使用するようにジャンゴ編集ネイティブ登録フォーム

{{ form.as_p }} 

を置く場合。しかし、それは非常に醜いです。だから私は

{{ form.username}} 
{{ form.password1}} 

としてそれを使用するが、エラーが発生したときに時々、私は、レジスタの形式にエラー[例名]

{% if form.any_error %} 

そして

{{ form.errormessage}} or {{ form.errorlist.values}} 
をスタイルのメッセージを表示しているかどうかを確認する必要があります

Djangoでネイティブフォームを使用するにはどうすればいいですか?ネイティブフォーム変数は何ですか?

+0

djangoのドキュメント、特に[レンダリングフォームのエラーメッセージ](https://docs.djangoproject.com/en/1.11/topics/forms/#rendering-form-error-messages)を再訪する必要があります。 –

+0

@vishes_shellこのページでは、ネイティブフォームの変数名は表示されません。 * {%if form.subject.errors%} *はネイティブフォームでは機能していません。 –

+0

しかし、djangoのドキュメントでは、[Forms API](https://docs.djangoproject.com/en/1.11/ref/forms/api/#module-django.forms)を検索するだけです。 'form'オブジェクトの' errors'属性に簡単にアクセスできます。 –

答えて

0

Widget Tweaks フォームのフィールドにクラスと属性を追加すると、フォームのスタイル設定を大幅に制御できます。

<form method='POST' action='' enctype='multipart/form-data'> 
    {% load widget_tweaks %} 
    {% csrf_token %} 
<span>1. Title: {{ form.title|add_class:"titleCSS" }}</span> 

{% if form.errors %} 
      <span> {{ form.errors|add_class:"errorCSS" }} </span> 
{% endif %} 
</form> 

それともあなたは、彼らが正常に動作クリスピーフォームを使用する前に言及し、サイトの多くは、それを使用しているが、あなたはクリスピーフォームパッケージに仕事をしなければならない。同様に Widget Tweakでは、HTMLで行うようにCSSを追加できます。

+0

OKありがとうございました。それは私の問題を解決しました。 –

+0

私はまだあなたが達成したいと思っていたものを100%得られませんが、私はあなたを助けることができてうれしいです:) – hansTheFranz

0

Djangoフォームをエレガントでドライな方法でレンダリングすることに興味がある場合は、Django Crispy formsサードパーティのアプリを確認できます。多くの異なるフロントエンドフレームワーク(Bootstrap、Uni-form、Foundation)のコンポーネントを使用してフォームを簡単にレンダリングするように設計されています。

すべてのフォームフィールドタイプに適切なウィジェットを使用し、検証エラーを管理し、正しいマークアップとスタイルでエラーを表示します。

+0

OK、チェックします –

関連する問題