【问题标题】:Could not parse the remainder django template无法解析剩余的 django 模板
【发布时间】:2015-05-05 18:13:42
【问题描述】:

我的模板中的循环中有一个条件,如下所示:

{% for message in message_trash %}
<td><a href="#">
   {% if request.session.user_email == message.message_user_reciever.user_email %}
       {{ message.message_user_reciever.user_firstName }} {{ message.message_user_reciever.user_lastName }}
   {% elif request.session.user_email == message.message_user_sender.user_email %}
       {{ message.message_user_sender.user_firstName }} {{ message.message_user_sender.user_lastName }}
   {% endif %}
</a><small><a href="#">Friends</a></small></td>
{% endfor %}

但我不知道为什么在应用 url 时会出现此错误?

TemplateSyntaxError: Could not parse the remainder: '==message.message_user_reciever.user_email' from 'request.session.user_email==message.message_user_reciever.user_email'

更新:

这是我渲染到模板的视图和变量:

def trashMessages(request, userId):
    if isMessageOwner(request, userId):
        user = Users.objects.get(user_id=userId)
        message_trash = Messages.objects.filter(Q(message_user_reciever= user, message_sender_type='TRASH') | Q(message_user_sender=user, message_reciever_type='TRASH'))
        return render(request, 'navigation_messages.html', {'user': user, 'message_trash': message_trash, 'type': 'trash'})

【问题讨论】:

  • 你能粘贴你的视图代码吗?
  • @还有你的消息模型,请检查它的属性。
  • 很可能不是原因,但你有错字吗.. reciever = receiver ?

标签: django python-2.7 django-templates


【解决方案1】:

在测试您的代码时,我只能通过交换来复制您的问题:

{% if request.session.user_email == message.message_user_reciever.user_email %}

{% if request.session.user_email ==message.message_user_reciever.user_email %}

注意缺少的空格。您的问题中的 sn-p 完全与您的模板中的一样吗?

【讨论】:

    猜你喜欢
    • 2016-04-03
    • 2012-08-21
    • 2013-02-05
    • 1970-01-01
    • 2016-06-13
    • 2017-11-18
    • 1970-01-01
    • 2011-07-11
    • 2015-03-06
    相关资源
    最近更新 更多