首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >匿名用户-显示用户信息

匿名用户-显示用户信息
EN

Stack Overflow用户
提问于 2018-02-11 03:58:43
回答 1查看 40关注 0票数 0

我正在尝试显示我的用户信息,但是我得到了匿名用户作为我的输出;Anonymous User

我在views.py中的代码如下;

代码语言:javascript
运行
复制
def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('/account')
    else:
        form = RegistrationForm()

        args = {'form' : form}
        return render(request, 'accounts/register.html', args)

def view_profile(request):
    args = {'user': request.user}
    return render (request, 'accounts/profile.html',args)

我正在重写UserCreationForm,我在forms.py中的代码是;

代码语言:javascript
运行
复制
class RegistrationForm(UserCreationForm):
    email = forms.EmailField(required=True)


    class Meta:
        model = User
        fields = {
            'username',
            'first_name',
            'last_name',
            'email',
            'password1',
            'password2'
        }


    def save(self,commit=True):
        user = super(RegistrationForm,self).save(commit=False)
        user.first_name = self.cleaned_data['first_name']
        user.last_name = self.cleaned_data['last_name']
        user.email = self.cleaned_data['email']

    if commit:
        user.save()
        return user

我想要显示配置文件信息的profile.html是;

代码语言:javascript
运行
复制
{% block head %}

<title> User Profile </title>

{% endblock %}

{% block body %}
<div class="container">
<p>
  <h1> {{user}}</h1>
  <h3>First Name: {{user.first_name}}</h3>
  <h3>Last Name: {{user.last_name}}</h3>
  <h3>Email: {{user.email}}</h3>
</p>
</div>


{% endblock %}

真的不知道我在哪里出错了,非常感谢任何帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-11 04:11:52

你必须用@login_required来装饰你的def view_profile(request):,否则Django也会为匿名用户服务这个请求。

还要注意,如果您有(或添加) django.core.context_processors.request到您的settings.TEMPLATE_CONTEXT_PROCESSORS (或settings.TEMPLATES['OPTIONS']['context_processors'],取决于您的django版本),您可以在模板中使用{{request.user}},而无需在上下文中创建特定条目。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48725001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档