AI编程助手
AI免费问答

ThinkPHP关联查询有关问题

  2016-06-13 11:04   880浏览 原创

ThinkPHP关联查询问题
我用的是最新的2.0版 在MODEL中写好了关联定义
现在要在控制器里查数据
用手册里说的relation(true)方法但是提示错误:Model:relation您所请求的方法不存在

怎么回事呢?请帮我解答,谢谢大家啦
源码

关联定义(MODEL中)
public $_link =array(
    'lyType'=>array(
        'maping_type'=>HAS_ONE,
        'class_name'=>'lyType',
        'foregin_key'=>'typeId',
    ),


关联查询(控制器中)
$ly=new lyModel();
     $list=$ly->relation(true)->find(1);


错误提示:
Model:relation您所请求的方法不存在
------解决方案--------------------
$ly=new lyModel();
new LyModel()
------解决方案--------------------
class UserModel extends RelationModel

继承 RelationModel 类

<br>/**<br>     +----------------------<br>     * 进行关联查询<br>     +----------------------<br>     * @access public<br>     +----------------------<br>     * @param mixed $name 关联名称<br>     +----------------------<br>     * @return Model <br>     +----------------------<br>     */<br>    public function relation($name) {<br>        $this->options['link']  =   $name;<br>        return $this;<br>    }<br><br>

------解决方案--------------------
1. 声明类

class NewsModel extends RelationModel
{

}

2. 查询

$News = D('News');
$data = $News->Relation(true)->find();
dump($data);
------解决方案--------------------
用D('News')或者m('New',‘RalationModel’)实例化

php免费学习视频:立即学习
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。