【发布时间】:2014-03-05 14:10:44
【问题描述】:
我在理解包含标签的行为时遇到了一些问题。
我有以下相关文件
base.html(基本模板)
<!DOCTYPE html>
<html lang="en">
{% load staticfiles %}
<link rel="stylesheet" type="text/css" href="{% static 'tags/style.css' %}">
{% load my_tags %}
<head>
<div class="back">
<h1> Flux </h1>
<hr>
</div>
</head>
{% block sidebar %}
{% endblock %}
{% block eventlist %}
{% endblock %}
{% sidebar %}
</body>
</html>
start.html(目前什么都不做)
{% extends "base.html" %}
views.py
def start(request):
return render_to_response("tags/start.html",{},
context_instance=RequestContext(request))
my_tags.py(我的包含标签,SeeTagForm 只是一个文本字段表单)
@register.inclusion_tag("tags/sidebar.html",takes_context=True)
def sidebar(context):
seetagform = SeeTagForm()
return {"seetagform":seetagform}
sidebar.html
<form action="" method="POST">
{% for error in seetagform.name.errors %}
<p> {{ error }} </p>
{% endfor %}
{% csrf_token %}
<button class="btn" type="submit" name="seetag">See</button>
{{ seetagform.name }}
</form>
现在我有一些疑问:
1 - 由于我的标签中有takes_context=True,context 参数有哪些成员?
2 - 更具体地说,我如何处理来自/通过我的标签的提交,也就是说,我可以在sidebar(context) 中执行request = context["request"],以便我可以检查,例如,输入是否正确?
3 - 要执行上述任何操作,我是否必须在 setting.py 中添加任何内容?
4 - 是否可以(并且是良好的做法)处理包含标签中的表单,或者我应该使用另一种视图来做到这一点?如果有,怎么做?
提前致谢,
【问题讨论】:
-
1.做一个
print dir(context)。 2. 是 3. 否 4. 没有什么能阻止你这样做。替代方案:stackoverflow.com/questions/16323360/…
标签: python html django django-templates