前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PHP-ThinkPHP将后台模板与框架做结合

PHP-ThinkPHP将后台模板与框架做结合

作者头像
cwl_java
发布于 2020-03-27 01:26:22
发布于 2020-03-27 01:26:22
2.6K00
代码可运行
举报
文章被收录于专栏:cwl_Javacwl_Java
运行总次数:0
代码可运行

九、将后台模板与框架做结合

模板整合思路:

①确定页面的访问路径(模块、控制器、方法)

②新建对应的控制器方法,在方法中调用模板

③将模板页面移动到对应的视图目录下(创建子目录)

④将静态资源文件移动到public/static/admin目录下

⑤修改模板文件中静态资源路径

页面分布:

登录页 Login控制器login方法 login.html

首页 Index控制器index方法 index.html

商品列表 Goods控制器index方法 goods_list.html -> index.html

商品新增 Goods控制器create方法 goods_add.html -> create.html

商品修改 Goods控制器edit方法 goods_edit.html -> edit.html

管理员列表 Manager控制器index方法 manager_list.html -> index.html

管理员新增 Manager控制器create方法 manager_add.html -> create.html

管理员修改 Manager控制器edit方法 manager_edit.html ->edit.html

1、模板布局

(见手册–模板–模板布局)

使用模板布局,就是把多个模板页面都有的公共代码给抽取出来,放到一个公共位置开发维护

好处:相同的代码只维护一份,减少代码工作量

后台全局布局设置步骤:

①修改配置文件application/admin/config.php,加入以下设置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'template'  =>  [
    'layout_on'     =>  true,//开启布局
    'layout_name'   =>  'layout',//布局文件名称
]

②将静态资源文件移动到/public/static/admin目录下

③在application/admin/view目录下,新建layout.html

将后台页面公共的头部、底部代码提取到layout.html中,在中间位置放一个特殊字符串“{_CONTENT_}”,表示此位置,替换为原始要访问的页面内容。

layout.html文件中, 只保留所有页面公共 的css和js相关代码,修改静态资源路径

注: 一定不能 直接将所有css和js都放在layout.html中。

注:TP框架中,模板中的静态资源路径,不能使用相对路径./ ,必须使用以/开头的路径。

④临时关闭模板布局

全局布局设置,对所有页面全部生效。

特殊页面(不需要使用布局的页面),可以在控制器方法中,临时关闭模板布局。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$this->view->engine->layout(false);

比如登录页面,不需要使用布局,见 “3、后台登录页”

2、后台首页

①确定页面的访问路径(模块、控制器、方法)

admin模块Index控制器index方法

②新建对应的控制器方法,在方法中调用模板

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
namespace app\admin\controller;

use think\Controller;

class Index extends Controller
{
	public function index()
	{
		return view();
	}
}

③将模板页面移动到对应的视图目录下

index.html => application/admin/view/index/index.html

④修改模板文件

保留页面独有的静态资源文件,以及主体部分代码

修改模板文件中静态资源路径

注:如果页面显示效果不对,可以考虑先删除缓存 runtime目录

3、后台登录页

①确定页面的访问路径(模块、控制器、方法)

admin模块 login控制器 login方法

②新建对应的控制器方法,在方法中调用模板

注:后台的登录页面,不需要使用布局

③将模板页面移动到对应的视图目录下

将login.html 移动到 application/admin/view/login/目录下

⑤修改模板文件中静态资源路径

修改application/admin/view/login/login.html

注:也可以使用_STATIC_ 代替静态资源路径中的/static(手册–视图–输出替换)

4、其他页面

重复步骤①②③⑤

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/03/26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ThinkPHP-视图的定义和使用(二)
在视图中,可以使用$变量名的形式来访问控制器传递的变量。在示例中,我们在视图中使用了$users变量来显示用户数据。
堕落飞鸟
2023/05/02
3140
SpringBoot 整合 Thymeleaf & 如何使用后台模板快速搭建项目
主要针对我们在项目中最常见的几种用法进行讲解。同时我们也是在项目中直接讲 Thymeleaf 的用法。
宁在春
2022/10/31
1.1K0
SpringBoot 整合 Thymeleaf & 如何使用后台模板快速搭建项目
Golang 语言 Web 框架 beego v2 之模板
beego 的模板处理引擎采用的是 Go 内置的 html/template 包进行处理,而且 beego 的模板处理逻辑是采用了缓存编译方式,也就是所有的模板会在 beego 应用启动的时候全部编译然后缓存在 map 里面。
frank.
2020/12/08
2K0
ThinkPHP-视图的使用和渲染(一)
ThinkPHP是一款基于PHP开发的高性能、简洁优雅的Web应用框架,它提供了丰富的功能和灵活的架构,可以帮助我们快速搭建各种类型的Web应用程序。其中,视图(View)是框架中非常重要的一部分,它负责渲染模板和输出内容,让我们可以方便地将数据和界面进行分离。
堕落飞鸟
2023/05/02
8970
AngularJS爬坑之路——路由关于路由的那点事儿
关于路由,首先想到的是生活中的路由器。 类似路由器,AngularJS中的路由其实也是一样的概念
大牧莫邪
2018/08/27
1.6K0
ThinkPHP-视图的使用和渲染(二)
在ThinkPHP中,我们可以使用layout方法来设置布局文件。layout方法需要传入布局文件的路径,例如:
堕落飞鸟
2023/05/02
6450
ThinkPhp5开发实战2:后台管理登录设计
本文主讲:ThinkPhp5开发实战系列续集:设计登录界面,完成登录操作 对于没有配置开发环境或者TP5框架的同学,请参考文章 [第一章 ThinkPhp5开发实战1:搭建环境配置TP5框架(持续更新收藏关注)]
德宏大魔王
2023/08/08
5060
ThinkPhp5开发实战2:后台管理登录设计
登录-Thinkphp5.1开发后台管理系统
将config目录下的app.php文件(thinkphp5.1版本核心配置文件)内的路由配置项设置为开启状态;
申霖
2019/12/27
3.2K0
ThinkPHP控制器-精华总结
TP3.23对控制器做了更加细致的分层,除了默认的Controller层,还可以自定义事件控制层Event。
PM吃瓜
2019/08/12
1.1K0
ThinkPHP控制器-精华总结
ThinkPHP-视图的使用和渲染(三)
下面是一个简单的示例,演示了如何使用视图类来加载模板文件、传递变量数据、设置布局文件和输出页面内容。
堕落飞鸟
2023/05/02
4000
Gin框架入门系列-路由与控制器及静态网站
路由是一个过程,指的是一个http请求,如何找到对应的处理器函数(也可以叫控制器函数),Gin框架的路由是基于httprouter包实现的。
用户10002156
2023/11/06
2920
Gin框架入门系列-路由与控制器及静态网站
基于 Go 语言开发在线论坛(三):访问论坛首页
前面两篇教程学院君分别给大家介绍了基于 Go 语言构建在线论坛的整体设计以及数据表的创建、模型类的编写,今天我们来看看如何在服务端处理用户请求。
学院君
2020/04/02
1.3K0
基于 Go 语言开发在线论坛(三):访问论坛首页
Django简介
Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在一起,模型负责业务对象与数据库的映射(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求,其示意图如下所示:
py3study
2018/08/03
1.7K0
flask_admin使用教程
如果启动此应用程序并导航到http://localhost:5000/admin/,则应该会看到一个顶部带有导航栏的空白页。通过指定适合您需要的引导样本主题自定义外观(有关可用样本,请参阅http://bootswatch.com/3/)。
菲宇
2020/08/11
4.4K0
Thinkphp框架的项目规划总结和踩坑经验
1、项目分为PC端、移动端、和PC管理端,分为对应目录为 /Application/Home,/Application/Mobile,/Application/Admin;
PM吃瓜
2019/08/12
2.5K0
Thinkphp框架的项目规划总结和踩坑经验
layuiAdmin pro v1.x 【单页版】开发者文档
</li> <li> <p><strong>dist/</strong><br> 通过 gulp 将 layuiAdmin src 目录的源代码进行构建后生成的目录(即:将 JS 和 CSS 文件进行了压缩等处理),通常用于线上环境。关于 gulp 的使用,下文也有介绍。 </p> </li> <li> <p><strong>start/</strong><br> 存放 layuiAdmin 的入口页面、模拟接口数据、layui</p> </li>
Erwin
2020/01/02
4K0
thinkphp常用配置config
下载解压 ThinkPHP 3.2.3,在默认的应用 Application(./Application) 中,包含一个默认的模块 Home(./Application/Home)。
PM吃瓜
2019/08/12
3.1K0
thinkphp常用配置config
一篇文带你从0到1了解建站及完成CMS系统编写
文章为从0到1了解内容管理系统搭建与编写,由于一篇文章内容篇幅过长,文章内容经过压缩,该项目中相同逻辑的实现只以一个实例作为描述,主要以核心关键功能的开发作为主要的讲解步骤。如有想学习完整内容系统编写可在留言区留言,我会尽快完成完整版的实战教程发布。谢谢。本篇不涉及vue、nodejs的前端框架。
1_bit
2020/10/29
3.3K0
一篇文带你从0到1了解建站及完成CMS系统编写
Spring学习笔记(十九)——springboot Web开发和模板引擎thymeleaf语法使用
2)、SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来
不愿意做鱼的小鲸鱼
2022/09/26
8370
Spring学习笔记(十九)——springboot Web开发和模板引擎thymeleaf语法使用
Express框架的学习介绍
原生的http在某些方面表现不足以应对我们的开发需求,所以就需要使用框架来加快我们的开发效率,框架的目的就是提高效率,让我们的代码高度统一。
泽霖
2023/11/29
2780
相关推荐
ThinkPHP-视图的定义和使用(二)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验