0

現在、login.htmlがあり、その中にログイン用のフォームがあります。私のフォームはすべて同じように見える必要がありますが、内容は異なります。現時点では、私のコードは次のようになっています。

<form enctype="multipart/form-data" method="POST" action="">
    <fieldset>
        <legend>{{ legend }}</legend>
        <div style="line-height:18px">{% block top %}{% endblock %}<br></div>
        <table class="form">
        {% for text,name,inputtype in formcontent %}
            <tr>
                <td class="right">
                    <label>{{ text }}:</label><br/>
                </td><td style="float:left">
                    <input name="{{ name }}" type="{{inputtype}}">
                </td>
            </tr>
        {% endfor %}
        </table>
    <input value="{{ button }}" type="submit">
    <div style="line-height:18px">
        <div class="err">
            {{ err }}
        </div>
        {{ bottom }}
    </div>
</fieldset></form>

変数をurls.pyに入れるよりも良い方法があるのではないかと思っていました(ページに複数のフォームがある場合、これがすべての状況で機能するとは限りません)。クラスを作成するのが良い解決策ですが、ページからこのクラスを呼び出す方法がわかりません。タグの作成が必要になることはわかっていますが、テンプレートから引数として2D配列を提供する方法がわかりません。

4

1 に答える 1

1

Django Crispy Formsは、まさにこの理由で作成されました。まさにあなたが必要としているものだと思います。

于 2012-11-12T07:20:52.523 に答える