根据用户是否登录更改主页中的内容

问题描述 投票:0回答:1

我是鹡鸰新手。我找到了如何编辑主页并添加 HTML 内容。但我希望内容取决于用户是否登录(例如,如果用户未登录,则写“请登录”,否则写“hello user”)。我尝试在编辑器的“html”文本框中编写以下代码,这是我在网上找到的:

{% if user.is_authenticated %}To proceed, please log in with an account that has access.{% endif %}

但是当我发布它时,我只是在页面底部(图像下方)看到了这个确切的文本,所以它可能不应该工作。

如何通过 wagtail 编辑器做到这一点?

wagtail wagtail-admin
1个回答
0
投票

根据设计,您无法将 Django 模板代码插入到内容字段中 - 内容管理系统的全部要点就是将编辑内容与代码分开。

可以在页面模板中包含上述代码,尽管正确的代码是

{% if request.user.is_authenticated %}
。如果您希望文本在 Wagtail 管理界面中可编辑,您可以为其定义一个单独的字段(例如,名为
logged_in_message
)并在模板上输出该字段:

{% if request.user.is_authenticated %}
    {{ page.logged_in_message|richtext }}
{% endif %}
© www.soinside.com 2019 - 2024. All rights reserved.