您好,欢迎访问一九零五行业门户网

用openPNE怎样才能创建一个项目

不知道你们有没有用过openpne,其实我们可以使用openpne创建过项目。今天我们就来介绍一下openpne创建过项目的方法,有需要的可以参考参考。
使在cmd命令符下找到php命令
打开“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”->“path”,编辑其值,在前面
增加下面的路径地址:
d:\wamp\bin\php\php5.3.0; ===========php编译安装目录
将php.ini复制到c:\windows 目录下
symfony简单的建程序
将下载好的symfony压缩包解压缩到www文件夹下起名symfony
命令行输入
e:打开e盘根目录cd..\.. ===========返回上两级,或打开指定目录cd wamp\www\symfony ===========打开指定目录php data\bin\symfony -v ===========查询symfony版本信息php data\bin\symfony generate:project newproject ===========在www\symfony文件夹下生成一个名叫newproject的新项目php data\bin\symfony generate:app myapp ===========在该项目的apps文件夹下生成一个名叫myapp新程序php data\bin\symfony generate:module myapp mymodule ===========在myapp程序文件夹下建立一个名叫mymodule的新模块
php调用的symfony命令打开的是相对当前目录存放symfony命令的目录
在动作类中写的动作方法与对应模板的访问路径 mymodule模块名 myaction动作方法名
openpne 安装
将下载好的压缩包解压缩到服务器目录
查找 projectconfiguration..php.sample改名成projectconfiguration..php
apache服务打开rewrite模块
cmd命令符下打开openpne所在文件夹,输入
php symfony openpne:install
php的apc扩展:如有需要将115中的php_apc.dll下载到wamp\bin\php\php5.3.0\ext目录下
打开php扩展的php_apc,打开php.ini,找到extension=php_apc.dll并在下一行添加
apc.enabled=0apc.shm_segments=0apc.enable_cli=0
如果根目录有cache文件夹把cache中的内容清空
创建一个程序
cmd输入
php symfony opgenerate:plugin opvoteplugin ===========创建一个vote插件程序php symfony opgenerate:app opvoteplugin pc_frontend ===========为vote插件程序创建电脑前台文件夹php symfony opgenerate:module opvoteplugin pc_frontend vote ===========在vote插件程序电脑前台文件夹内创建vote模块php symfony cc ===========清除一次缓存
action动作及访问权限
在plugins\opvoteplugin\lib\actions目录下创建一个opvotepluginvoteactions..php文件
文件中写类class opvotepluginvoteactions sfactions{}
然后在opvoteplugin\apps\pc_frontend\modules\vote\actions\actions..php文件中的类继承刚才写的类
voteactions opvotepluginvoteactions{}
不仅电脑前台pc_frontend文件夹内,在opvoteplugin\apps下的所有手机电脑前后台模块动作都可以继承这个类,实现一个类管理多个前端
建立plugins\opvoteplugin\apps\pc_frontend\modules\vote\config\security.yml文件然后输入
all:
is_secure: on
credentials: snsmember
表示此模块需要验证,只有会员才能访问
在opvotepluginvoteactions类中写一个动作
executeshow(sfwebrequest ){}
然后创建plugins\opvoteplugin\apps\pc_frontend\modules\vote\templates\showsuccess.php
执行一次命令php symfony cc
建立数据库表
创建plugins/opvoteplugin/config/doctrine/schema.yml文件,输入
options: charset: utf8votequestion: actas: [timestampable] columns: id: { type: (4), primary: , autoincrement: } member_id: { type: (4), notnull: } title: { type: (140), notnull: } body: { type: } relations: member: { ondelete: cascade }votequestionoption: columns: id: { type: (4), primary: , autoincrement: } vote_question_id: { type: (4), notnull: } body: { type: (140), notnull: } relations: votequestion: { ondelete: cascade, foreignalias: votequestionoptions }voteanswer: actas: [timestampable] columns: id: { type: (4), primary: , autoincrement: } member_id: { type: (4), notnull: } vote_question_id: { type: (4), notnull: } vote_question_option_id: { type: (4), notnull: } body: { type: } relations: member: { ondelete: cascade } votequestion: { ondelete: cascade, foreignalias: voteanswers } votequestionoption: { ondelete: cascade, foreignalias: voteanswers }
表示分别创建了vote_question,vote_question_option,vote_answer三个表其中的relations表示设立外键关联
此时执行命令php symfony openpne:install将重新安装openpne并创建前面三张表
之后再执行一次php symfony doctrine:build --all --and-load 重新插入数据
路由规则
创建plugins/opvoteplugin/lib/routing/opvotepluginfrontendcollection..php
输入
<?php opvotepluginfrontendroutecollection sfroutecollection{ __construct( ) { parent::__construct();->routes = ( 'vote_list' => sfrequestroute( '/vote', ('module' => 'vote', 'action' => 'index'), ('sf_method' => ('get')) ), 'vote_new' => sfrequestroute( '/vote/new',('module' => 'vote', 'action' => 'new'),('sf_method' => ('get')) ), 'vote_create' => sfrequestroute( '/vote/create',('module' => 'vote', 'action' => 'create'),('sf_method' => ('post')) ), 'vote_edit' => sfdoctrineroute( '/vote/edit/:id', ('module' => 'vote', 'action' => 'edit'),('id' => '\d+', 'sf_method' => ('get')),('model' => 'votequestion', 'type' => 'object') ), 'vote_update' => sfdoctrineroute( '/vote/update/:id',('module' => 'vote', 'action' => 'update'),('id' => '\d+', 'sf_method' => ('post')),('model' => 'votequestion', 'type' => 'object') ), 'vote_show' => sfdoctrineroute( '/vote/show/:id',('module' => 'vote', 'action' => 'show'),('id' => '\d+', 'sf_method' => ('get')),('model' => 'votequestion', 'type' => 'object') ), 'vote_post' => sfdoctrineroute( '/vote/post/:id',('module' => 'vote', 'action' => 'post'),('id' => '\d+', 'sf_method' => ('post')),('model' => 'votequestion', 'type' => 'object') ), 'vote_delete_confirm' => sfdoctrineroute( '/vote/delete/:id',('module' => 'vote', 'action' => 'deleteconfirm'),('id' => '\d+', 'sf_method' => ('get')),('model' => 'votequestion', 'type' => 'object') ), 'vote_delete' => sfdoctrineroute( '/vote/delete/:id',('module' => 'vote', 'action' => 'delete'),('id' => '\d+', 'sf_method' => ('post')),('model' => 'votequestion', 'type' => 'object') ), 'vote_nodefaults' => sfroute( '/vote/*',('module' => 'default', 'action' => 'error') ), ); }}?>
创建plugins/opvoteplugin/apps/pc_frontend/config/routing.yml
输入
vote:: opvotepluginfrontendroutecollection options: { name: vote }
指定由哪个类来设定路由规则
输入命令php symfony cc
输入命令php symfony app:routes pc_frontend 查看路由是否设定成功
不创建opvotepluginfrontendcollection..php与routing.yml文件也可,将按默认路由访问
推荐学习:php视频教程
以上就是用openpne怎样才能创建一个项目的详细内容。
其它类似信息

推荐信息