代码笔记图解1框架_第1页
代码笔记图解1框架_第2页
代码笔记图解1框架_第3页
代码笔记图解1框架_第4页
代码笔记图解1框架_第5页
免费预览已结束,剩余34页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、历史:20081月框架 : )历史:20081月框架 : )Yii:高性能框架、代码重用性发挥到了极致、惰性加载框架、速度非常 ()版本情况:(2008 年-2009 年(2010 年-现在【yiiCms内容管理系统 Cms内容管理系统 Shop 商城系统 Office 办公系统Dedecms 是内容管理系统的框Ecshop 是做商 Dedecms 是内容管理系统的框Ecshop 是做商 Yii 框架是通用的框架,一般适合客户需求比较灵活、比较花样多,比较复 / view视 view视模将样式 Css 将样式 Css 创建UserController控制器创建视图 views/user/log

2、in.引入 css 和与 创建UserController控制器创建视图 views/user/login.引入 css 和与 Netbeans 生成时间快捷今晚主要任务 Yii2, 控制器和视图理(名字方法: actionLogin Views/ 下边有许多 ,3. (和定义、商品列表4. 商城Yii3. (和定义、商品列表4. 商城Yii 框架结合制作出效果(首页、自定义控【昨天内容回顾又学习控制器和答 :这个父没有显示包含进程序里边,比如 include、答 :这个父没有显示包含进程序里边,比如 include、之类包含指那么这个父类控制器 在什么地方给包含进来,间接通过引入 compo

3、ments 答:在 Yii 应用的主配置文件里边进来那么主配置文件 在什么地方引入的应用里边的处 答poments- 控制父类控制台通过“布局poments- 控制父类控制台通过“布局”展示模板学习使用自动代码生成工具 gii,通过 gii 创模在将模板展示出根据情况引入数【yii 布局实布局文件已经实现出来,下需要使用这个布局文系统默认的布局文件是 使用布局布局文件具体与什么控制器渲染视图 artial()此方法不布局文件具体与什么控制器渲染视图 artial()此方法不会渲染布render()这个渲染布局现布局已经做制作布局文件layouts/文件名字,使用$content代表普遍模板内容

4、。设置布局文件,在父类控制器里边 public $layout = 调用布局文件,在控制器方法里边使用方render()就会调用布【商部署一都会有“前台”台:给一般普通用户来使用,例添加商品、修改商品等操来处理思考:【商部署一都会有“前台”台:给一般普通用户来使用,例添加商品、修改商品等操来处理思考:如何创有自己的控制器程序的架构是部署在Yii 上边自己有一个模块机制,可实模块:有自己独立的控制器、独立的视图、独立的模型,其不可以单独部创建模块:gii(自动代码生成工具gii Yii 里半是以模块形式存在。在 以便使用配置文件里边打开 gii 模块gii 模块如何来 :该模?r=模块名路由会判

5、断当前的名字,是模块定位到模块,否则定位现要生成一模起一个名现要生成一模起一个名给现模块已经创建成功现模块已经创建成功,要想使用,必须在 引入该现模默认如上图显示的时候为什么现模默认如上图显示的时候为什么会显示前台的布局内容,是 Yii 代码重用性的可以自定布局进行显示,后边讲解通过控制器和视图展示登录操在与操通过控制器和视图展示登录操在与操作前台是完全一样的行,不同的:?r=模块/控制器/方的时候,路由需要加上模块的名字前:?r=控制器/【模块在【模块在iiC设计模式的代码的集合体,也是有一定功能代码的集成,这个功能类似前台功能,前台有控制器、视图、模型,模块也有控制器、视图、模型。前台可以

6、实现的功能,模块都可以实现。【实其他页面整体架构使里边的框整体实现使用【实其他页面整体架构使里边的框整体实现使用是“品”字型布局将头右侧三种结合到一起形成了 html 框架布局【商品列表页面部署控【商品列表页面部署控制视的时候,连接内容会跑到 frame 对应的名字的时候,连接内容会跑到 frame 对应的名字frame”/新窗口展/本窗口展/这个名字与 frame 里边的名内容会跑到总结前台视图文件的布局效果实使用自动代码生成工具 gii 生成模视图页面实现(登录、主体框架页面、商品操作明天会学习数据库作业gii 模块前两天学Yii 视图模板关于布局 layout 使用部署,gii 模登录、

7、前两天学Yii 视图模板关于布局 layout 使用部署,gii 模登录、商品展示、主体 frameset 框架部署模块:让的代码在物理上分隔当有相对独立的业务需求,都可以通过模块来解【数据库MVCV:viewM: 操作数据建立数据0507、建立数据表、写入测Yii框架连接数据库注意:数据处理走 PDO,因此需要开扩展 上数在控制器里边随便一个地方输出红色文字意思是获得数据库Yii:app():YiiOOP 象框架,每次 web 请求创建一个类的对象,让对象调用相关方法执行。对象对也可以通过代码获得这个应用对象(Yii:app()以上信息出现说明数据库有连接【使用数以上信息出现说明数据库有连接

8、【使用数现可以对数据库进行增、删、改、查MVC需要制作 来操作数来看看“db”到底是谁Yii 框代码大约有 10000 行,有来看看“db”到底是谁Yii 框代码大约有 10000 行,有一个文件将全代码 【使用数据模型 goods利用模型查询数据表的数据实现商品信息的模型CActiveRecord:是活,AR,好多成熟框架都有此技术学习 AR 技术。让页面底部产生日让页面底部产生日志获得全部商品信息获得全部商品信息遍历出来的结果是具)获得具体信息find()会产生一信息,其会返回一个直接对象出返回了一个数组,里边有好多对象元素直接返回了一个对象,可以通过对象获得具体商品信【数据信息展现到视图

9、模板里通过模型获得商品信息展现到页通过模通过模型获得商品信息展现到页通过模型获得具体商将商品信息传递到视图模板里artial(视图,被传递变量信息在视图里边获得具体商品信息展【通过具sql 语句获得信数据模型对象可以调用类里边的相关方法,进而对数据库进行活,就是模型【通过模型实现数据的【通过模型实现数据的当创建一个对象,这个对象就代表数据表里边的一。数据表的字段,就创建模型对象的属如何添加把模型对象的属性信息设置好,就可以实现数据的【利用页面表单实现数据添【利用页面表单实现数据添利用助手进行表单程序来生html 代码助手:利Yii 里边称助手是“小物件通过 widget 小物件创建添加通过 w

10、idget 小物件创建添加商品的表单其控制器需要把当前模型对象传递到视图里边,以供表单使再次 数据模型需要有一个方法提供汉字名显echo$form-labelEx($goods_m echo$form-,goods_name),goods_weight)echo$form-labelEx($goods_m echo$form-,goods_name),goods_weight)等等表单校验yii 框架连接数据库制作数据模型 (db 组件的配置通过小物件form 表单作业配置数据库,完成goods 模型的通过作业配置数据库,完成goods 模型的通过小物件实现添加商品信关于商品的数据模型 fin

11、dAll() 该查询系列帮获得多条数据,以数组形式返回数组里边的每个元素都是一个模型对象。获得具体数据需要遍历fi) 该查询系列帮助每次只获得一条数据,以模型对象的形式给使用模型1. 创建模型步骤 模型名字 模型模型fi) 该查询系列帮助每次只获得一条数据,以模型对象的形式给使用模型1. 创建模型步骤 模型名字 模型模型2. 【商品数现已经把添加的表单展现出来,widget 小物件展示的表单表单展现m模型属性将模型传递到视图普通输入展对称名称与模型属性【商品添加逻名称与模型属性【商品添加逻辑部在控制接收表商品添制作表商品添制作表数据模型调用save 方法,实现数据添加【数据修获得被修改的数据-

12、展现到一个表单里边(呈现被修改数据的在表里边针对具体内容进行修修改完毕提交表单进行数据的更修改商品信息使用的模板是添加修改商品信息使用的模板是添加时候的模板,基本没有改动,form 表使用小物件构建的,这个小物件会自动把关联的信息给显示出来,节省了开发的成本,这也是使用小物件创建form表单的原因之一。还有一个使用小物件的原因是表单验证需要使用小物同样save()方法被调用insert 语句update 语句同样save()方法被调用insert 语句update 语句区分都可以进前者主要是在添加的时候使用,后者是在查询或修改的时候使如添加数 new Goods,而使那么数据添加【商品信【ne

13、w追代码(要执【new追代码(要执行构造函数【数据查AR(CActiveRecord)find() 查询一个findByPk 根据主键查询信息 【数据查AR(CActiveRecord)find() 查询一个findByPk 根据主键查询信息 findAllByPk 根据主键查询全部findAllBySql 根据 sql 语句查询全部findBySql 根据 sql 语句查询信息,前者会查询一信息,后者会查询信前者给返回一个数据模型对象,后者以数组形式返回多个数据模型对limitfindByPk 都是根据主键进行信前者每次只可以传递一个主键信息,后者可以传递一个也传递多后者传递参数,如果是多个主键信息,需要以数组形式传递offset 都是从哪来findAll() 该方法是数据模型封装好的方法,可以获得全部数findAll()CactiveRecord 这个类的成员方法。AR 是对数据库向上的封象方式操作数据库。AR 需要最终转变为具体

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论