Django下存在两个及其以上的APP时,不同APP下templates目录中同名.html文件造成冲突。

解决方法:

下面给大家详细说明:

我这里就用两个应用(APP)给大家进行讲解,大家可以看到django目录下两个应用(APP)blog与blog2。

但是在浏览器中的运行结果却相同,为什么会出现这样的情况呢?下面我来给大家解释一下?

Django查找templates

Django按照INSTALLED_APPS中的添加顺序查找templates,下面应用的templates都是运用的第一个应用templates下HTNL文件。当然,你可以修改templates下HTML文件的名字,这样也是可以的,但是如果你创建的应用太多,不可能都去改名字吧,一般情况下我们不采用这样的方式,而是用以下方法:

  在应用(APP)的templates目录下创建一个以APP名为名称的目录。

   

    

把HTML文件放入创建的以APP为名称的目录中

  

  

最后在views.py文件中把路径进行一下修改就可以了。

  

原文地址:https://www.cnblogs.com/zh-lin/p/9849057.html

时间: 2024-09-30 07:58:23

Django下存在两个及其以上的APP时,不同APP下templates目录中同名.html文件造成冲突。的相关文章

linux下,将一个目录中的图片文件合成为gif图片

# {0} 为文件所在目录位置 # {1} 为gif图片位置 convert -delay 30 -depth 8 -layers optimize -quality 80 -loop 0 {0} {1} 原文地址:https://www.cnblogs.com/dadream/p/9759521.html

springboot templates目录下的页面文件访问不到 static 目录下的 jq 文件

springboot项目结构中,页面(eg:.ftl )放在 templates 目录下,静态文件 (eg : .js) 放在 static 目录下, 但是实际操作中发现 controller 访问到 ftl页面后, 找不到引用 static 目录中的 jq 文件 然后开始了尴尬的一个早上... 如果你遇到了这个问题,你首先要想到要把 springboot 中访问静态资源的路径映射到 static 目录下, 对资源访问做一个映射,然后去百度吧... 在 application.propertie

Android学习笔记--design包下的两个控件

今天学习了design包下的两个控件,记录一下,首先需要我们依赖 1 compile 'com.android.support:design:25.0.0' 之后在XML文件中就可以使用了 1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 x

第三百八十节,Django+Xadmin打造上线标准的在线教育平台—将所有app下的models数据库表注册到xadmin后台管理

第三百八十节,Django+Xadmin打造上线标准的在线教育平台-将所有app下的models数据库表注册到xadmin后台管理 将一个app下的models数据库表注册到xadmin后台管理 重点:xadmin的数据表注册,是到app下查找的adminx文件,所以我们必须在app下创建一个adminx.py文件,所有关于数据表注册到xadmin后台的代码都是写在adminx.py文件里 adminx.py文件编写 1.自定义一个类来继承object对象,这个类叫做数据表管理器 数据表管理器里

windows下配置两个或多个Tomcat启动的方法

确保window的环境变量中找不到CATALINA_HOME和CATALINA_BASE 修改server.xml,用解压版的tomcat,不要用安装版的. 1.修改http访问端口 conf下的server.xml文件的服务访问端口,默认是8080可以改成其它的,如7000 2.修改shutdown端口 默认8005 3.修改jvm启动默认端口,默认端口为8009 <br><Connector port="8009" protocol="AJP/1.3&q

Linux下的两种服务:RPM包默认安装的服务和源码包安装的服务

有些软件安装到电脑上后就会有一个或多个服务出现在系统服务管理里面,比如Apache,VMware软件等就会出现在计算机服务里面,可以随系统的启动而启动,当然也可以设置不启动,等要用了的时候再去启动,(可以在运行里面输入services.msc直接打开服务列表),但是有些软件安装到电脑后不会有什么服务生成,比如我们的聊天工具QQ. Linux下有两种服务,一种是RPM包默认安装的服务,一种是源码包安装的服务. RPM默认安装的服务在/etc/rc.d/init.d/文件下,执行service sm

Thinkphp框架下连接两个及以上的数据库方法

在我们的实际开发者,我们经常需要链接两个以上的数据库,方法跟简单 Thinkphp文档中也有介绍:点击查看 方法如下: 第一步:配置文件config.php <?php //默认数据库1 return array( //'配置项'=>'配置值' 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => '10.10.10.10', // 服务器地址 'DB_NAME' => 'user', // 数据库名 'DB_USER' => 'roo

MD5做为文件名。机器唯一码有电脑的CPU信息和MAC地址,这两个信息需要在linux或unix系统下才能获取吧。

可以采用机器(电脑)唯一码 + 上传IP + 当前时间戳 + GUID ( + 随机数),然后MD5做为文件名.机器唯一码有电脑的CPU信息和MAC地址,这两个信息需要在linux或unix系统下才能获取吧. //获取电脑的CPU信息function OnlyU(){        $a = '';        $b = array();        if(function_exists('exec')){                if(mailto:[email protected]

Java开发环境部署2.下载安装java jdk 2.1下载与安装 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载完后开始安装。注意,安装的路径不能变!!!反正笔者前两次改了安装路径都装不成。 JDK默认安装成功后,会在系统目录下出现两个文件夹,一个代表jdk,一个代表jre。

操作系统:win10 64biteclipse版本:Eclipse Mars (4.5),Eclipse IDE for Java EE DeveloperJava JDK版本:jdk-7u79-windows-x64SDK版本:24.4.1版ADT版本:23.0.4版 1.下载安装java jdk1.1下载与安装 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html JDK默认安装成功后,会在系统目录下出