Rob*_*Rob 5 php laravel eloquent laravel-5
如果关系还没有订单,我正试图去默认订单.但如果确实如此,我不使用默认值.
$q = $this->items();
if (empty($q->orders)) {
$q = $q->order();
}
Run Code Online (Sandbox Code Playgroud)
请注意,这order()只是一个BaseModel类中的默认方法.出于某种原因,当我尝试orders在查询构建器上调用该属性时,它表示Undefined property即使它是类中的公共属性Builder.
不知道为什么,或者我如何检查这个.
编辑:
我在路线中设置了一个完整的例子:
class Test extends \Illuminate\Database\Eloquent\Model {}
$router->get('/test', function () {
$test = new Test;
$q = $test->select('id')->orderBy('id', 'desc');
$bindings = $q->getRawBindings();
var_dump($bindings);
return 'test';
});
Run Code Online (Sandbox Code Playgroud)
转储只是吐出查询构建器对象而不是绑定?
经过一番活动,终于开始了.
所以实际上这是一个Eloquent\Builder不Query\Builder那么需要的实例:
$q->getQuery()->orders
Run Code Online (Sandbox Code Playgroud)
这使您可以访问查询对象.
| 归档时间: |
|
| 查看次数: |
1506 次 |
| 最近记录: |