phalcon:官方多模块支models层,mode数据库配置
Posted 穆晟铭
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了phalcon:官方多模块支models层,mode数据库配置相关的知识,希望对你有一定的参考价值。
phalcon:官方多模块支models层,mode数据库配置(二)
利用:\pahlcon\mvc\model\Manager::registerNamespaceAlias()方法获取多模块下的model层
public/index.php
use Phalcon\Mvc\Model\Manager as ModelsManager; //对模型进行别名处理 $di->set(‘modelsManager‘, function() { return new ModelsManager(); });
model层,我的命名空间是:
namespace App\Modules\Backend\Models;
namespace App\Modules\Backend\Models; use \Phalcon\Mvc\Model; class Album extends Model { //id public $aid; //模板id public $atid; public $name; //影片id public $mid; //文章id public $nid; public $enable; public $create_time; public function beforeCreate() { if( is_null($this->create_time) ) $this->create_time = time(); if( is_null($this->enable) ) $this->enable = 0; } }
那么controller层怎么调用model数据呢。
方法有一:
$cate = \App\Modules\Backend\Models\Album::findFirst(array( ‘conditions‘=>"aid = :aid:", ‘bind‘=>array(‘aid‘=>$aid) ));
方法二(多表查询):
注册别名
$this->modelsManager->registerNamespaceAlias(‘m‘ , ‘App\Modules\Backend\Models‘); $currentPage = $this->getParam(‘page‘); $builder = $this->modelsManager->createBuilder() ->columns("aid,atid,name,mid,nid,create_time") ->from("m:Album") ->where("enable = 0") ->orderBy("aid ASC");
将model下的文件,都赋给别名:m,那么调用具体的数据表就是: m:Album, m:User。。。。。。
以上是关于phalcon:官方多模块支models层,mode数据库配置的主要内容,如果未能解决你的问题,请参考以下文章
Phalcon中的model Forcing Cache(模型强制缓存)小坑