project_name:项目名称 moduleDir:module的路径 controller_name:生成的控制器名称
CotrollerBase:对应模块下的controllerBase,要先进行命名空间的修改,该模块下所有的controller均继承该ControllerBase
1、创建项目
phalcon project --name 'project_name' --type='modules'
2、创建modules
phalcon module --name 'backend' --namespace='project_name\Modules\' --output='moduleDir'
3、导入指定数据库的所有models(如果指定--config,则要先修改对应的config文件的mysql配置)
phalcon all-models --config='./app/config/config.php' --models='./app/common/models' --namespace='project_name\Common\Models'
单独创建一个model:
phalcon model --name='real_table_name' --namespace='project_name\Common\Models' --output='./app/common/models'
4、把新增加的模块添加进bootstrap_web文件中,在app目录下的bootstrap_web目录中添加一下内容:
'backend' => ['className' => 'project_name\Modules\Backend\Module']
5、把新增加的模块修改进./app/config/loader.php中,在该文件中添加
'project_name\Modules\Backend\Module' => APP_PATH . '/modules/backend/Module.php'
修改common模块的命名空间为:
'project_name\Common\Models' => APP_PATH . '/common/models/',
'project_name\Common\Library' => APP_PATH . '/common/library/',
6、为把models添加到每个模块的命名空间中
在对应模块下的modules.php中的registerAutoloaders函数中的registerNamespaces添加如下:
'project_name\Common\Models' => APP_PATH . '/common/models/'
7、修改默认模块./app/config/service_web.php中修改default的module和default的controller
8、生成controller,在执行这一步之前需要先建立ControllerBase.php并修改好命名空间和类名
phalcon controller --name='controller_name' --namespace='project_name\Modules\Backend\Controllers' --output='./app/modules/backend/controllers' --base-class='ControllerBase'