Wenn Sie beispielsweise Django zum Erstellen einer Website verwenden, enthalten die meisten Seiten Benutzerinformationen wie Benutzername, Avatar usw.
Aber es ist mir unmöglich, für jede Ansicht eine Benutzervariable in den Kontext zu übergeben, oder?
Wie erreiche ich normalerweise meine Bedürfnisse?
你多虑了,不用你手动一个个写的,默认已经有了,直接用就行,比如:{{user.username}}
不过没有头像等自定义的字段信息。
或者 你自定义一个context_processors.py,用于返回你想要的信息,然后在settings.py里导入。 就不需要在每个函数都返回了
应该是{{request.user.username}}.
而且django支持设置全局变量
用户登录后,用户信息一般都会存在request.user里,不需要传user变量进context, 前提是在settings里引用了 django.template.context_processors.request
补充一点:如果很多页面都会出现固定的一部分内容,可以采取模板继承的方法,将相同的部分提取出来,通过extends和include对模板的内容进行修改。