Django1.8中使用模板Templates的正确用法
本文最后更新于 411 天前,其中的信息可能已经有所发展或是发生改变。

最近在学怎么用Django,本以为又是一段有趣的经历,可是现实总是给人以打击。
下午在使用模板时,发现在视频教程上设置的TEMPLATE设置在我的setting.py文件中写了不起作用,于是各种上网查,在百度上没有找到相关的有用的东西,培训广告,游戏广告,以及百度那恶心的“擦边球广告”到时出来了一大堆······

GOOGLE+在报错信息中给的信息上找到了最终的答案,虽然是英文的,但勉强看懂了

在百度出这篇文章中: Django的TEMPLATES设置项(1.8新特性) 找到了一些东西,可是对于像我这样刚开始学习Django的人说并不很好理解,最终也没有知道是该怎样写才对(上面的例子我测试过,还是报错)

测试的错误

而且那个报错的 Enable 'django.contrib.auth.context_processors.auth' in your TEMPLATES setting in order to use the admin application. 我其实到现在也没理解。

TEMPLATE_CONTEXT_PROCESORS

但是在报错的HTML中搜索TEMPLATE关键字,仔细看看,还是能发现不少有用信息的(Django这一点做的非常到位):

TEMPLATE设置

由上面两张图以及最初给的那个网址中,你会发现 TEMPLATES 设置中可以激活 OPTION 中的一个值:django.contrib.auth.context_processors.auth于是按照报错的信息,我这么做了,谢了如下的TEMPLAES配置:

TEMPLATES = [{'APP_DIRS': True,
  'BACKEND': 'django.template.backends.django.DjangoTemplates',
  'DIRS': [],
  'OPTIONS': {'context_processors': ['django.template.context_processors.debug',
                                     'django.template.context_processors.request',
                                     'django.contrib.auth.context_processors.auth',
                                     'django.contrib.messages.context_processors.messages']}}]

在DIRS列表中加入了搜索TEMPLATE的地址,然后问题解决

Tips:TEMPLATE地址的加入方法可以将绝对路径直接加入,还可以有如下方法:

# 因为在setting.py中有一个获取文件地址的变量 BASE_DIR 所以可以在此基础加入相对路径
os.path.join(BASE_DIR,'app\\templates') 
# 其中templates是你的目录模板名称,app是你的工程名,因为观察发现获取的DIR是工程上一层的目录地址
# 千万记住目录名要用双斜杠,否则会被转义

下周接着考试,这次希望考好一些,今天中考,顺便祝各位考生顺利,在考场别紧张(那年我答语文卷子前五分钟紧张的脑子一片空白)

下了两天雨,下的人心里感觉郁闷,希望快晴起来。

暂无评论

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇