作者:gunnerliang_851 | 来源:互联网 | 2013-06-24 08:17
在用ThinkPHP的关联查询时,遇到了一个这样的提示:“Model:relation您所请求的方法不存在”。到ThinkPHP论坛搜索了一下,发现有6个相关的帖子
在用ThinkPHP的关联查询时,遇到了一个这样的提示:“Model:relation您所请求的方法不存在”。到ThinkPHP论坛搜索了一下,发现有6个相关的帖子,不过最新的5个都不沾边。只有最早的一个,是管理员回复的,有点参考价值,呵呵。
我要做的是新闻表关联新闻分类表,模型代码如下:
-
php
-
//天涯PHP博客 http://blog.phpha.com
-
class NewsModel extends RelationModel{
-
//关联分类表
-
public $_link = array(
-
'profile' => array(
-
'mapping_type' => BELONGS_TO,
-
'class_name' => 'Ncat',
-
'foreign_key' => 'cid'
-
),
-
);
-
}
-
?>
天涯PHP博客[PHPHA.COM]
相关说明:首先要明确两者之间的关系,即每篇新闻都有一个分类,因此为BELONGS_TO;其次,有一点比较重要的是,这里的模型类的父类应该是 RelationModel 而不是 Model ,否则不会成功的;接下来,还有一点要注意,在新闻模块(NewsAction)中,注意查询时的实例化要用方法 D() 而不是 M() 。