-
Notifications
You must be signed in to change notification settings - Fork 114
Learn Pi Engine Step By Step
chunhuili edited this page Aug 5, 2014
·
36 revisions
- 基本组成元素card->list->borad
- Board 是容纳 List 的地方,在上面可以放置几乎无数个 List,而且 List 能够经由鼠标拖动,相互调换位置;
- List 是容纳 Card 的地方,Crad 可以经由鼠标拖动,拖放到不同的 List 中去。
- Card 是最基本的组成元素,可以称为 “任务卡片”。因为是记录和任务有关信息的地方
- 拖动调整工作流程
- 在trello中没有delete的概念,所有的删除就是archive起来,日后还可以找到。
- 每个成员对 Trello 中的任务所作出的任何改动都会记录下来,所以项目的负责人可以根据团队的进度进行统筹安排
- 注册github帐号,登录
- 找到pi框架,fork Pi Engine,地址 https://github.com/pi-engine/pi
- 在github上的Pi Engine的首页的右上方都会看到三个标识
- Watch:watch 的作用是关注,目的是更新的时候,你可以收到通知。
- Star:star 的作用是收藏,目的是方便以后查找。 (或者可以这样理解)一种更新的方式管理你所感兴趣的仓库的记录,任何之前预览过的仓库都能在其页面中找到
- Fork:fork 的作用是参与,目的是你增加新的内容,然后 Pull Request,原作者会考虑把你的修改和原作者原来的内容合并。 (或者可以这样理解)最重要的功能之一,克隆别人仓库的代码到自己的项目中。可以作为子模块的形式使用,或二次开发。
- 安装wamp5.4以上的版本,php环境使用phpstorm。
- 将fork的pi代码复制我本地,放到www文件下
- 运行localhost,开始安装pi,配置好数据库和登录信息等
- 开启Apache 里边的rewrite_module重启Apache(基本上可以安装上基本的框架)
- 登录后台,熟悉后台的布局,功能等
- 点击模块,在可用下手动安装各个模块,熟悉其功能。
- 对应了解各个模块的代码
- 准备:
- 了解pi框架下各个模块的文件结构,每个模块下都包含那些文件夹和文件,可以仿照demo来书写你的模块
- 参考文档:https://github.com/pi-engine/pi/wiki/Dev.Module-Structure
- 必须了解这个文档
- 目标:学会按Pi Engine规范开发模块。
- 方式:分步完成一个简单的Pi模块。
Checklist
- 在usr的module中新建一个文件夹
- 按照其他模块的目录格式去配置你的module.php文件,
- meta的三个配置东西是必写的title version licence,其他都是可选的。 (参考文档里的Configuration file写的很清楚)
- 使用正确的命名空间,引用正确的文件。
- 在front文件间里建立controller文件,assign一个值到模版中的front,
- 在模版中的front建立.phtml文件。接收controller传过来的值。
- 参照demo里的实例,添加自己的form表单。
- 用到的命名空间和你引用的文件的路径必须是正确的。在controller里写好你的方法,
- 在控制器里写好你的方法后在相应的template里写你的.phtml文件。
- 在sql文件夹下建立自己的数据库,在安装的时候就会出现一个(前缀+模块名+sql文件中名字)的一张表。
- 在form文件夹下书写form文件。配置信息与数据库中对应起来。
- 在controller中进行接收处理,分配给template
- 这个在后台显示那就需要用的admin里controller,
- 还是参照demo,与数据库连接起来。Foreach循环的时候写上自己的数据。
- 写好方法后在到相应的.phtml文件接收数据进行输出。
- 这个要是实现的功能就是通过后台启用或禁用的手动提交,让前台的form表单的个个输入框是够显示
- 目的:了解config文件的功能。
- 主要使用config.php文件,所写的配置数据会在后台直接显示出来。
- 查看doc中的README-config.md文件。了解如何调用config的配置信息
- 在你第五步的form文件夹下得到config配置文件的数据。然后在显示输入框的地方添加判断条件。
- I18n也就是“国际化”,根据需要把软件界面和文档翻译成不同国家、地区的语言版本。
- 首先在写的过程中用特定的格式书写你要输出的信息(参考Pi中doc里边的readme-i18n)
- 关联的页面是locale文件夹,这个文件夹主要用于语言的本地化
- 每个po文件都会对应一个mo文件。Po文件是从当前模块提取,mo文件是通过poedit生成的。
- 建立nav.php,设置里边的front和admin。
- 每个label对应的名字都会在导航的下拉菜单显示
- Controller和action都是对应在你的控制器中的方法(对应的显示)
- Front和admin里边数组的名字可以随便起,不要重复就好了
- 建立block.php,返回数组的名字就是你phtml文件的名字
- 在src下建立Block文件夹,里边建立Block.php的类文件
- 在后台设置,区块中就会出现你编写的区块,在系统的装扮中就可以将区块拖到你的首页(当然你也可以拖到别的地方提交)
- Note:
- 引用的文件路径和命名空间必须正确。
- 每一步的功能可以参考其他模块实现的方式