修改Django布局结构后访问Django模板 [英] Accessing Django Templates after modifing the Django layout structure

查看:90
本文介绍了修改Django布局结构后访问Django模板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我按照以下方式重新组织了Django:

I re-organized Django,the following way:

config
 - settings
     - base.py
     - local.py
 urls.py
 wsgi.py  

还应用:

- apps(level0)
  - acc(level_1)
   - users(level_2)
     - templates
       - users
    - acc_control(level_2)
  -att(level_1)
    - notes (level_2)
    - notifications (level_2)
  - mark(level_1)
- config (level0)
- templates(level0) 

某些应用程序直接位于apps文件夹中,例如,标记,其他应用程序位于其他子文件夹中,即用户

Some apps are directly in apps folder, ex mark, others are in other subfolders, ex users

   BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) 


TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')]

我的问题是ng模板访问权限,因为出现以下错误:

My issue is regarding templates access, because I receive the following error:

\apps\acc\users\templates\users\templates\users\detail.html (Source does not exist)

重复内部文件夹;

视图中,模板设置为:

 template_name = 'users/templates/users/detail.html'

我也尝试过:

 template_name = '/users/detail.html'


推荐答案

您不需要 users / templates / template_name 时的code>前缀。只要您在 TEMPLATES 设置中具有'APP_DIRS':True ,应用目录加载程序就会检查<$每个已安装应用程序的c $ c> templates 目录,包括 users / templates

You don't need the users/templates/ prefix when you set template_name. As long as you have 'APP_DIRS': True in your TEMPLATES setting, the app directories loader will check the templates directory for every installed app, including users/templates

template_name = 'users/detail.html'

这篇关于修改Django布局结构后访问Django模板的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆