计算机教程

当前位置:3522.com > 计算机教程 > 基于SAE CodeIgniter3.0 管理端angularjs 前台amazeui的多

基于SAE CodeIgniter3.0 管理端angularjs 前台amazeui的多

来源:http://www.4sports-uk.com 作者:3522.com 时间:2019-06-22 18:57

开发环境:

  • 服务器系统:CentOS-6.x
  • web服务器:Apache-2.2.x
  • php版本:PHP-5.3.x
  • 开发工具:sublime text 3 ,谷歌浏览器
  • 数据库查询工具:phpmyadmin
  • 协作工具:乌龟SVN

我的博客原文地址 http://www.qinblog.net/Article/article/5

约定:

  • 数据表前缀:blog_
  • 数据表主键名:表名_id,自增,不为空
  • 时间字段类型统一为timestamp,每个表必须含有创建时间(默认当前时间),更新时间(默认由mysql更新)
  • 字符集采用UTF-8

项目定义:多用户博客系统--运行在SAE上,基于php的最新3.0CodeIgniter框架,前台界面采用最新国内开源amazeui的移动端UI框架,后台管理端采用google出的angularjs的JS框架,一个多用户博客系统。

前台与后台

根据功能的不同,我们将网站分为前台和后台。前台用于展示内容给用户,后台用于管理员管理网站内容。同样,在网站应用的编码实现时,我们也需要根据前台、后台的功能不同来进行代码的安排和组织。那么,使用CodeIgniter搭建的网站,前后台应该怎么划分呢?

参考资料:

分开前后台的几种方式

如果有使用过ThinkPHP的朋友,肯定会熟悉下面这张图

图片 1

TP中实现多应用是很简单的,框架本省支持应用分组,创建一个新的应用只需在application中新建一个文件夹复制相关内容即可,而且支持公有模型、配置,且支持配置文件优先级。

比起来CI框架并不支持这样的功能,CI提供了两种方案给用户解决多应用问题:

在Model、Controller等文件夹下建立子文件夹,加载相关模型、控制器时只需加上子目录即可,如下

图片 2

在application下建立多个应用文件夹,每个文件夹下是一个应用,为每个应用创建入口文件,定义application路径,如下

图片 3图片 4

1、创建子目录方式: 属于一个CI应用,共享配置文件,无法进行单独的配置设置,比如后台要开钩子功能但是前台不需要,或者前后台需要分别加载各自的模块时,这种搭建方式就不是那么友好了。

2、多应用多入口: 前后台分为单独的CI应用,可以单独进行配置,通过各自的入口文件访问,应用完全分离,但是无法进行模型、自定义类库的共享。

数据库结构设计:

 

方案的选择

无论选择哪种方案,都要跟着实际需求去选择,你的项目前后台是否需要单独的配置?是否是两个队伍分别开发前后台?等等。

就以我的博客为例,我选择了第2种方案。

那么第2种方案无法共享模型、类库的问题怎么解决呢?同样的数据,难道我要为了前后台写两份模型出来吗?

OK,显然CI并没有给我们提供分组、共享模型的功能,但是CI的特点之一就是“可扩展”,需要你自己动手做一些东西,这个框架没那么丰富,但却小巧、灵活,这也是CI的乐趣之一。

概念结构设计:

  • 实体->属性->关系(橙色是已经创建设计,黑色表示待创建)
    1. 用户
    2. 角色
    3. 权限点
    4. 分类/标签
    5. 文章
    6. 图片
    7. 上传文件
    8. 评论
    9. 系统配置
    10. 站内信
    11. 公告
    12. 友情链接

多入口应用搭建

将application种的文件复制两份,分别为home和admin

图片 5

设置入口文件的 $application_folder 变量

前台: index.php

图片 6

后台: admin.php

图片 7

此时在两个应用中创建不同的welcome控制器、视图,分别访问index.php,admin,php就能分别访问到不同的应用了。

本文由3522.com发布于计算机教程,转载请注明出处:基于SAE CodeIgniter3.0 管理端angularjs 前台amazeui的多

关键词: 3522.com