[英]How to use {{ request.path }} in django 1.7.7
我在Django 1.7.7中遇到了一些问题。 我无法在django 1.7.7的模板中使用{{request.path}},但是在django 1.6中,我可以做到这一点。
在setting.py中配置模板以在Django 1.7.7中使用{{request}}:
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [
os.path.join(PACKAGE_ROOT, "templates"),
],
"APP_DIRS": True,
"OPTIONS": {
"debug": DEBUG,
"context_processors": [
"django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.tz",
"django.core.context_processors.request",
"django.contrib.messages.context_processors.messages",
"pinax_theme_bootstrap.context_processors.theme",
],
},
},]
在Django 1.6中:
TEMPLATE_CONTEXT_PROCESSORS = [
"django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.tz",
"django.core.context_processors.request",
"django.contrib.messages.context_processors.messages",
"pinax_theme_bootstrap.context_processors.theme",
"allauth.account.context_processors.account",
"django.core.context_processors.request"]
和我的模板html
{% extends "base.html" %} {% load i18n %} {% load url from future %} {% block body_class %}home{% endblock %} {% block body_base %} {{ request.path }} <div class="row"> <form class="answer-question-form" method="POST" action="/add_answer_question"> {% csrf_token %} <div class="col-md-12" style="padding-left: 0px; padding-right: 0px"> <div class="form-group col-md-12"> <label>Question</label> <input type="text" class="form-control" name="question" placeholder="Question..."> </div> <div class="form-group col-md-6 col-sm-12"> <label>Choose type question</label> <select class="form-control" name="categories"> <option value="01">1</option> <option value="02">2</option> <option value="03">3</option> <option value="04">4</option> </select> </div> <div class="form-group col-md-12"> <label>Type answer</label> <ul class="nav nav-pills nav-justified choose-type-answer"> <li class="active"><a class="type-answer" href="#" id="type-answer-01">Radio</a></li> <li><a class="type-answer" href="#" id="type-answer-02">Check</a></li> <li><a class="type-answer" href="#" id="type-answer-03">Seek</a></li> </ul> <input name="type-answers" type="hidden" value="01"> </div> <div class="form-group answers col-md-12"> <label>Answers</label> <input name="answer" type="text" class="form-control answer-detail" placeholder="Input answer here..."> <input name="answer" type="text" class="form-control answer-detail" placeholder="Input answer here..."> </div> <div class="form-group col-md-12"> <button class="btn btn-default pull-right" id="submit">Submit</button> </div> </div> </form> </div> {% endblock %}
因此,我在模板中添加了“ django.core.context_processors.request”,但是它不起作用。
请帮我! 谢谢
去除 :
"OPTIONS": {
"debug": DEBUG,
"context_processors": [
"django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.tz",
"django.core.context_processors.request",
"django.contrib.messages.context_processors.messages",
"pinax_theme_bootstrap.context_processors.theme",
],
},
添加:
TEMPLATE_CONTEXT_PROCESSORS = (
"django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.tz",
"django.contrib.messages.context_processors.messages"
"django.core.context_processors.request",
)
在文档1.7中 ,他们只在doc 1.8中没有提到“ OPTIONS”,
如果您不呈现请求,如docs所示:
如果您使用Django的render_to_response()快捷方式将模板的内容填充到模板中,则默认情况下将为模板传递一个Context实例(不是RequestContext)。 要在模板渲染中使用RequestContext,请使用render()快捷方式,该快捷方式与带有context_instance参数的render_to_response()的调用相同,该参数强制使用RequestContext。
也许问题出在您的观点上。 尝试使用render而不是render_to_response(如果使用的话)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.