2017-09-20 6 views
0

djangoフォームのマテリアルデザインを使用して、1ページに2つのフォームを表示するにはどうすればよいですか? forms.pyでdjangoフォームのマテリアルデザインを使用して1ページに複数のフォームをレンダリングするにはどうすればいいですか?

、我々は

template = Template(""" 
    {% form %} 
     {% part form.username prefix %}<i class="material-icons prefix">account_box</i>{% endpart %} 
     {% part form.email prefix %}<i class="material-icons prefix">email</i>{% endpart %} 
     {% part form.password prefix %}<i class="material-icons prefix">lock_open</i>{% endpart %} 
    {% endform %} 
    """) 

のようなコードを追加することができます。そしてテンプレートに、我々はページに1つの以上のフォームを追加することができますどのように

{% block formbody %} 
    {% include form.template %} 
{% endblock %} 

を持っているのForm2を言うの?

答えて

1

これはthe documentationで説明されている:

オプション:

フォーム - フォームインスタンス指定されていない場合にレンダリングするために、かかる可変形態コンテキスト

(強調鉱山)から

異なる形式をレンダリングする:

{% form form=login_modal %} 
    form code here 
{% endform %} 

これはあなたのビューでは、フォームにバインドされたコンテキスト変数を提供する必要があることを意味します

from viewflow.flow.views import PerformTaskView 
from .forms import LoginForm 

class MyView(PerformTaskView): 
    def get_context_data(self, **kwargs): 
     context = super(MyView, self).get_context_data(**kwargs) 
     context['login_modal'] = LoginForm() 
     return context 
+0

どうもありがとう:)をうまく機能 – user866933

関連する問題