Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
你好,匿名!如何在django…auth中设置匿名用户用户名?_Django_Django Models_Django Authentication - Fatal编程技术网

你好,匿名!如何在django…auth中设置匿名用户用户名?

你好,匿名!如何在django…auth中设置匿名用户用户名?,django,django-models,django-authentication,Django,Django Models,Django Authentication,在回答Django教程的答案之前,请仔细阅读 我想把Hello,{{request.user.username}}放入一个模板,如果没有用户登录,它应该返回“Hello,Anonymous”。不是“你好” 想象一下当这个测试用例失败时我的惊讶: def test_hello_Anon(self): assert 'Anonymous' == auth.models.AnonymousUser().username 有人知道怎么通过吗?最好不重写和重新注册匿名用户类 我这样问是因为如果语

在回答Django教程的答案之前,请仔细阅读

我想把
Hello,{{request.user.username}}
放入一个模板,如果没有用户登录,它应该返回“Hello,Anonymous”。不是“你好”

想象一下当这个测试用例失败时我的惊讶:

def test_hello_Anon(self):
    assert 'Anonymous' == auth.models.AnonymousUser().username
有人知道怎么通过吗?最好不重写和重新注册
匿名用户


我这样问是因为
如果
语句是邪恶的。

Django有一个完全可用的过滤器:


你考虑过使用自定义上下文处理器吗?我不知道我是否错过了像文件范围中的
auth.model.AnonymousUser.username=“anon”
这样简单的东西。我考虑了一个自定义处理器,这就是为什么我添加了“no overriding&re registing”。基本上,我打算建议使用自定义上下文处理器来隐藏模板过滤器,而不是Daniel的示例,这样您的模板代码就是
{{username}
,等等,这不会覆盖任何内容。请注意我请求帮助通过的测试。我不了解利用
默认值
过滤器是如何使您的测试用例通过的…tx-我倾向于对
默认值:
处理器技术进行FAQ-尽管它只是一个隐藏的
if
。(
if
语句是邪恶的,因为“用多态性替换条件”可以解决问题。)
{{ request.user.username|default:"Anonymous" }}