请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

BannerModel::with()疑问

疑问1:
   $banner =   BannerModel::with('items')->all( $id );
   $banner =   BannerModel::with('items')->get( $id );
   
   使用了with()时,同时使用 all()、get()方法会报错    method not exist:think\db\Query->all    method not exist:think\db\Query->get

的确是Db类不存在 get()/all() 方法,这是为什么?
为什么加了个with() BannerModel模型变成了Db类?

正在回答 回答被采纳积分+3

1回答

7七月 2017-09-13 15:43:11

这个就是with方法的作用啊,如果想知道具体原因,TP是开源的开一下with方法的实现,一切就豁然开朗了。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕粉0057536294 #1
    您的意思是:
    加了with()连贯方法的话,就会将BannerModel模型由Model类变成Db类?
    嗯,我会用断点去看看得,感谢!
    还有就是我还又另外一个疑问,以下我的总结是否正确呢?
    老师,麻烦您了。
    /*
    含有外键的表,一般去关联其它一对一,一对多的表时,一般使用的是  
    
        belongsTo/belongsToMany
    
    不含外键的表,一般去关联其它一对一,一对多的表时,一般使用的是
    
        hasOne/hasMany
    
    */
    回复 有任何疑惑可以回复我~ 2017-09-13 18:20:23
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信