在使用eloquent-sluggable软件包时,我遇到了急于加载的问题。
有一个类Page,它与一个MenuItem类有关系
我需要在每个页面加载时加载页面和相关的menuitem,但是在使用With()方法时
$page = Page::with('menuItems')->findBySlugOrId($id);
我收到错误
BadMethodCallException in Builder.php line 1992:Call to undefined method Illuminate\Database\Query\Builder::findBySlugOrId()"
有没有办法使用With方法的可缓冲接口?或者有一种更好的方法可以做到这一点,我错过了吗?
答案 0 :(得分:1)
没有findBySlugOrId方法,因为错误说,findBySlug是一个实际比较slug_field wuth给定值的方法。你可以这样做 ::后与( '关系') - > whereId($值) - > findBySlug($值);在那个顺序因为findBySlug返回第一个记录,这意味着一个对象,你不能应用于单个对象的位置。