YII与Ace Admin 的集成
目录
一、 前言
yii-bootstrap扩展是已经将YII+Bootstrap完美结合,但今天我们讨论的不是它,面是基于bootstrap风格的ace admin(具体介绍,大家上网搜索);
先来张效果图:

图1 整体效果图
二、为什么要使用YII+ace
ace是前端模板,所以后台用什么语言或框架并不重要。但打开ace源码,您会发现很混乱,不知从哪里下手。本文将使用YII作为后台,结合Ace,为大家展示以搭积木的方式来构建自己的超酷后台。
三、新建YII模块
a、 放置好ace的js、css文件,生成yii模块;

图2 模块文件
b、 新建布局文件main.php,在此文件里引入UI的框架和固定的部分;main.php里固定上面的导航条和左边的菜单;
c、 在controller里引用此布局

图3 引用ace布局文件
d、 根据需要,在action里渲染具体的页面部分

图4 渲染视图
上图中,视图registerd里就只写表单部分,框架的其它部分已经在main.php里加载了;
图4中三个属性的说明见下图:menuID指示了当前点击的菜单

图5 菜单配置与页面上的有关系
四、如何修改模板
由于YII的布局文件存在的,所以开发者只需要写需要的部分。比如要开发图6这个页面,步骤如下:

图6 开发示例页面
a、 写action,并render到register页面
b、 Register中的控件从ace模板文件中copy而来,复杂的控制和布局通过组合实现,这一点跟搭积木很像;具体copy方式如下:用chrome打开模板页面,选择所需的控件。如图7所示:先copy父元素,再嵌套子元素;

图7 chrom中copy代码
提示:如果不采用此种方式,而是直接复制模板上的代码,您会发现ace模板的代码很混乱,不太容易组装成自己的页面。
五、注意的地方
a、 要理解bootstrap中,<div class=’row’></div>是新的一行。
b、 要理解栅格化,这在自己页面控件的重新布局是需要的。比如:
<div class="col-sm-6"></div>表示占父元素水平空间的一半。
C、除了基本的控件使用外,还有图标,提示等效果。
<i class="green icon-edit bigger-110"></i>:绿色的笔图,bigger-110表示大小
<span class="badge badge-danger">4</span>:红色(danger)圆圈中数字4
<div class="hr hr8 hr-double"></div>双分割线
…………
六、整合的不足之处
a、 菜单传递的方式 menu_parent,menu_child,不方便。
b、 当第一次整体UI加载完后,后续的菜单点获取的页面应该使用ajax传递,应该在main的body里留好div,存放controller->render的页面。
YII与Ace Admin 的集成的更多相关文章
- Ace Admin 使用教程
(原) 公司项目要换框架,然后丢了一套国外的给我,ace admin,本想着拿来改改,翻翻百度就能用的,可它是国外的啊,国内普及率又不高,没办法,硬着头皮一点点啃英文文档吧. File(文件) 简介: ...
- 改造 Ace Admin 模板的 ace_tree 组件的 folderSelect 样式
*注:我用的Ace Admin版本为1.3.4 Ace Admin 是一个轻量,功能丰富,HTML5.响应式.支持手机及平板电脑上浏览的优秀管理后台模板. 关于tree的使用,html文件夹下tree ...
- Ace admin 如何实现类似于freamset加载页面
如上标题所述,ace admin做后台页面的时候,可以实现类似于用freamset的功能,但是ace admin做的比freamset更好,他可以用异步加载的形式展示,而加载的页面的内容可以尽可能的少 ...
- 并发编程概述 委托(delegate) 事件(event) .net core 2.0 event bus 一个简单的基于内存事件总线实现 .net core 基于NPOI 的excel导出类,支持自定义导出哪些字段 基于Ace Admin 的菜单栏实现 第五节:SignalR大杂烩(与MVC融合、全局的几个配置、跨域的应用、C/S程序充当Client和Server)
并发编程概述 前言 说实话,在我软件开发的头两年几乎不考虑并发编程,请求与响应把业务逻辑尽快完成一个星期的任务能两天完成绝不拖三天(剩下时间各种浪),根本不会考虑性能问题(能接受范围内).但随着工 ...
- ace admin 左侧菜单定位
后台模版来自:Ace Admin http://ace.jeka.by/form-elements.html 左侧菜单,通过js根据url来判断显示哪块 window.location.pathnam ...
- ace admin后台模板
http://ace.jeka.by/index.html 下载: http://www.daimajiayuan.com/plus/download.php?open=0&aid=18152 ...
- 基于Ace Admin 的菜单栏实现
1.首先是数据库表必然包含以下几个字段Id ,ParnetId,Url,Name等 create table dbo.Module ( Id uniqueidentifier not null con ...
- ACE admin 后台管理框架
一.样式 1.常见按钮 .btn-app .btn-group .btn-corner .btn-xs .btn-sm .btn-mini .btn-minier .btn-defalut .btn ...
- ace admin
.svg image/svg+xml.woff application/x-font-woff.woff2 application/x- ...
随机推荐
- 【JavaScript脚本编程技术详解-----(一)】
首先说明,本系列教程是写给有一定的JavaScript编程基础的同学看的,最好还有其它的编程语言经验,因为里面可能涉及一些其它的程序设计语言写的源代码,这都是我自己总结的经验,我喜欢在学习一门新的编程 ...
- tomcat学习(-)windows 7 x64 配置tomcat服务
下载Tomcat 下载地址:http://tomcat.apache.org/ 安装版本:Tomcat 9.0 安装环境:windows 7 x64 阅读Tomcat文档 文档路径:http://lo ...
- Java面试题之Request对象的主要方法
setAttribute(String name,Object):设置名字为name的request的参数值 getAttribute(String name):返回由name指定的属性值 getAt ...
- android监听键盘
android中的带有输入功能的页面布局经常被弹出的键盘遮挡,一种处理方法是监听键盘的弹出,设置布局的padding或隐藏某些占位控件,使得输入框不被键盘遮挡.一种常用的方法是当Activity设置为 ...
- 看到当年自己学SQL Server 的笔记
数据库 数据量DataBase,不同类型的数据应该放到不同的数据库中, .便于对各个数据类别进行个性管理 .避免命名冲突 .安全性更高; table(表):数据库中的关系指的就是表; 一张表就是一个类 ...
- EBS R12 修改 apps 密码[Z]
注意:修改密码时应保证所有用户已退出, 最好是关闭应用实例.不用关闭数据库.在修改密码之前一定要改备下数据库中的FND_ORACLE_USERID和FND_USER表.FNDCPASS工具会自动把AP ...
- iOS多态 动态绑定
多态和动态绑定是为了解决父类调用子类的问题 首先,声明三个类aa bb cc 都继承于fist类 #import <Foundation/Foundation.h> @interface ...
- 已知w是一个大于10但不大于1000000的无符号整数,若w是n(n≥2)位的整数,则求出w的后n-1位的数。
描述 已知w是一个大于10但不大于1000000的无符号整数,若w是n(n≥2)位的整数,则求出w的后n-1位的数. 输入 第一行为M,表示测试数据组数.接下来M行,每行包含一个测试数据. 输出 ...
- perl 递归地遍历目录下的文件
#!/usr/bin/perl -w use strict; use File::Spec; local $\ ="\n";#当前模块的每行输出加入换行符 my %options; ...
- leetcode Single Number python
#question : Given an array of integers, every element appears twice except for one. Find that single ...