thinkphp1.3.1中Model:top10您所请求的方法不存在!的解决

--begin itlife365
thinkphp 定位查询 Model:top10您所请求的方法不存在!
Model:top10您所请求的方法不存在!
错误位置
FILE: D:\mysoft\git_local\iCommunity\ThinkPHP\Lib\Core\Model.class.php  LINE: 253
ThinkPHP3.1.3 { Fast & Simple OOP PHP Framework } -- [ WE CAN DO IT JUST THINK ]

查了一些相关资料得知:定位查询是内置于高级模型类(AdvModel)里的方法,是独立的方法且支持连贯操作。
如果直接使用M或D实例化模型会提示:top10您所请求的方法不存在!

因此要使用定位查询需要加载高级模型类,可以有下面三种方法加载高级模型类:
1、使用动态模型切换 switchModel() 方法:

      $database_goods = M('Keywords');//高级模型
      //$database_goods = M('AdvModel:Keywords');//高级模型
switchModel("Adv"),比如:$last = $this->KeywordsModel->switchModel('Adv')->order('id asc')->last();手动加载高级模型。
2、在用户模型里面继承高级模型类:

class MemberModel extends AdvModel{ } 实例化的时候运用 D('Member')就可以使用last方法。

3、第三种方法直接加载
原来是$database_goods = M('Keywords');//高级模型
改为
$database_goods = M('AdvModel:Keywords');//高级模型
即可。
与last类似的函数还有:
getN():取得查询结果中的某个位置的记录
first():取得符合条件的第一条记录

--end itlife365

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年11月    »
123
45678910
11121314151617
18192021222324
252627282930
搜索
标签列表
网站分类
最新留言
    文章归档
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.闽ICP备11018667号-2