반응형
{% include %} 태그 Django의 하위 템플릿에 변수 할당
이 코드가 있습니다 (예상 결과를 얻지 못함).
#subject_content.html
{% block main-menu %}
{% include "subject_base.html" %}
{% endblock %}
#subject_base.html
....
....
<div id="homework" class="tab-section">
<h2>Homework</h2>
{% include "subject_file_upload.html" %}
</div>
하위 템플릿 :
#subject_file_upload.html
<form action="." method="post" enctype="multipart/form-data">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="submit">
</form>
그리고 내 견해
#views.py
@login_required
def subject(request,username, subject):
if request.method == "POST":
form = CarsForm(request.POST, request.FILES)
if form.is_valid():
form.save()
return HttpResponseRedirect("/")
form = CarsForm()
return render_to_response('subject_content.html', {'form':form}, context_instance=RequestContext(request))
위의 코드는 내가 원하는 방식으로 HTML을 생성하지만 양식은 데이터베이스를 업데이트하지 않습니다.
그러나,
중간 템플릿을 건너 뛰고 업로드 양식으로 바로 이동하면 정상적으로 작동합니다.
#subject_content.html
{% block main-menu %}
{% include "subject_file_upload.html" %}
{% endblock %}
중간 템플릿으로 작동하도록 도와주세요. 같은 코드를 두 번 이상 입력하고 싶지 않기 때문에 이렇게하고 싶습니다.
@Besnik이 제안한 것처럼 매우 간단합니다.
{% include "subject_file_upload.html" with form=form foo=bar %}
이에 대한 문서include
는 이것을 언급합니다. 또한 only
다른 변수를 상속하지 않고 주어진 변수로만 템플릿을 렌더링하는 데 사용할 수 있다고 언급 합니다.
감사합니다 @Besnik
반응형
'developer tip' 카테고리의 다른 글
기본 ActionBar 제목 글꼴 크기는 무엇입니까? (0) | 2020.10.18 |
---|---|
XmlDocument를 사용하여 XML 문서를 만드는 방법은 무엇입니까? (0) | 2020.10.18 |
치명적인 오류 LNK1104 : 'libboost_system-vc110-mt-gd-1_51.lib'파일을 열 수 없습니다. (0) | 2020.10.18 |
Rails 4 열거 형과 함께 i18n을 사용하는 방법 (0) | 2020.10.18 |
GWT 대신 jQuery를 사용해야하는 이유는 무엇입니까? (0) | 2020.10.18 |