那么多模块下,如何分页的,如果直接用->from(表名),报错找不到此类,此时要引用model类的全命名空间名称如下:
$builder = $this->modelsManager->createBuilder() ->columns("id,username,name,email") ->from('Multiple\Models\Users') ->orderBy("id ASC") ->getQuery() ->execute(); $paginator = new QueryBuilder(array( "builder"=>$builder, "limit"=>10, "page"=>1 ));
如果是多表查询怎么办?不可能都带:命名空间/表名吧?
单表是可以这样操作的,但是多表情况下,如:leftjoin,rightjoint等等,需要用到表别名,
phalcon中,有addfrom(表名,别名)来替代from,leftjoin,rightjoin,innerjoin等等默认有别名功能,如下:
$builder = $this->modelsManager->createBuilder() ->columns("u.uid,u.username,u.name,u.email") ->addfrom('Multiple\Models\Users','u') ->leftjoin("Multiple\Models\Level", 'l.uid = u.uid','l') ->orderBy("u.uid ASC") ->getQuery() ->execute();