model-view-controller - 使用 Query Scope 在 Laravel Blade 模板中过滤结果

标签 model-view-controller scope laravel-5

我在 Controller 的某些地方使用查询范围,但现在我尝试过滤 Blade 模板中的一些结果。我的模型有一个有订单的位置。我将位置传递给 Blade 模板,然后使用以下内容:

@foreach( $location->orders->datesearch('delivered_at','2015-10-01','2015-10-15') as $order )
    {{ $order->order_number }}<br />
@endforeach

这是我的订单模型的摘录

class Order extends Model {

    public function location()
    {
        return $this->belongsTo('App\Location', 'location_id');
    }

   public function scopeDatesearch($query,$datesearch,$search_date_start,$search_date_end)
       {
           return $query->whereBetween($datesearch, [$search_date_start, $search_date_end])->get();
       }
}

位置也有很多订单。

我收到的错误是:

FatalErrorException in 56b3a0ff15f6ddc28458248fd0728a27 line 5:
Call to undefined method Illuminate\Database\Eloquent\Collection::datesearch()

我确实找到了this similar posting这似乎表明我正在做的事情应该有效。

最佳答案

从错误消息中,您可以看到 $location->orders 是一个集合,但集合中未使用范围。 尝试像这样更换 Blade :

@foreach( $location->orders()->datesearch('delivered_at','2015-10-01','2015-10-15')->get() as $order )
    {{ $order->order_number }}<br />
@endforeach

关于model-view-controller - 使用 Query Scope 在 Laravel Blade 模板中过滤结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33293402/

相关文章:

java - 全局变量无法识别用户输入的数字

java - 模型- View - Controller 和 Java

java - 在项目之间共享 customTags.tld

c++ - 如何在模板类的 'namespace' 中创建非模板类型定义?

php - 引用:什么是变量范围,哪些变量可从何处访问,什么是“ undefined variable ”错误?

mysql - Laravel 列未找到 : 1054 Unknown column '0' in 'field list'

html - Bootstrap Navbar 元素在 Laravel 中选择事件

javascript - Laravel5 link_to_action 在尝试删除文章时不起作用

ruby-on-rails - 如何定期获取/更新 Rails 中的值?

php - kohana2 auth - 登录问题