Django:如何使用 django-tweaks 在模板中获取用户名

Django: how to get username in template using django-tweaks

我已经用 widget_tweak 渲染了一个 html 表单,我希望该字段的默认值是当前用户名。

  #template
  {% if user.is_authenticated %}
  <form method="post">
  {% render_field form.title value="{{ request.user }}" readonly="True" %}
  </form>
  {% else %}
  <h 1>Login First</h 1>
  {% endif %}

但这会呈现准确的文本 "{{ request.user }}" 而不是打印用户名。如果我使用

标签并使用 {{ request.user }},打印当前用户名。

这是我的 views.py 的样子:

views.py

class CreatePostView(CreateView):
template_name = 'posts/new_post.html'
redirect_field_name = 'posts/post_detail.html'
form_class = PostForm
model = Post
def get_absolute_url(self):
    return reverse('posts:post_detail', args = [self.id])

django 模板标签中,您不需要双重赞誉 {{ }}。请尝试以下操作:

<!-- Your template -->
[...]
{% render_field form.title value=request.user readonly="True" %}
[...]

我刚刚删除了双重荣誉。