16

私はまだ Django と Bootstrap に慣れていないので、django-bootstrap パッケージを試しています: https://github.com/dyve/django-bootstrap3

そのページに含まれているサンプル テンプレート (フォーム アクションで URL を変更):

{% load bootstrap3 %}

{# Load CSS and JavaScript #}

{% bootstrap_css %}
{% bootstrap_javascript %}

{# Display a form #}

<form action="/search/" method="post" class="form">
        {% csrf_token %}
        {% bootstrap_form form %}
        {% bootstrap_form_buttons %}
                <button type="submit" class="btn btn-primary">
                        {% bootstrap_icon "star" %} Submit
                </button>
        {% end_bootstrap_form_buttons %}
</form>

エラーが表示されます:

BootstrapError at /
Parameter "form" should contain a valid Django Form.

この行で

{% bootstrap_form form %}

これはその README に含まれているサンプル テンプレートであるため、何が問題なのか正確にはわかりません。

4

7 に答える 7

4

{% bootstrap_form form %}は、djangoフォームインスタンスを期待するdjango-bootstrap3によって提供されるテンプレートタグであるため、「 」パラメーターは、 djangoドキュメントのdisplay -a-form-using-a-templateでform言及されているコンテキスト変数です 。

そのページで説明されているようにフォームを作成し、テンプレートで使用する html コードを置き換えます。

<form action="/contact/" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>

あなたの質問のサンプルコードで。

Parameter "form" contains a valid Django Form

お役に立てれば

于 2014-01-31T10:53:19.600 に答える
1

これを試して

{# Load the tag library #}
{% load bootstrap3 %}

{# Load CSS and JavaScript #}
{% bootstrap_css %}
{% bootstrap_javascript %}

{# Display django.contrib.messages as Bootstrap alerts #}
{% bootstrap_messages %}

{# Display a form #}
<form action="/url/" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" class="btn btn-primary" value="Submit" />
</form>

于 2016-07-21T13:42:29.527 に答える
0

bootstrap_button タグは本当に必要ありません。私もそれらを見つけようとしましたが、ソースで宣言されていません...

于 2013-10-15T16:28:58.797 に答える
0

エラーは非常に簡単です。有効な django フォームを渡すようにしてください。form.as_p()私は自分の見解ではなく通過formしていましたが、このエラーが発生しました。気付くのに時間がかかりました。それはまだ誰かを助けるかもしれません。

于 2015-02-02T20:41:36.103 に答える
0

{% extends 'bootstrap3/bootstrap3.html' %}スニペットの先頭に置きます。それはあなたのファイルであるはずです.bootstrap3.htmlはこのプレースホルダーにあります.

于 2014-10-05T16:02:32.873 に答える