首页 > 解决方案 > 不应静态调用非静态方法 Illuminate\Database\Eloquent\Model::newQuery()

问题描述

每当我运行以下代码时都会收到错误(在标题中):

搜索控制器.php

public function index(Request $request)
   {
   $distances = DB::table('posts')->select('distance')->distinct()->get()->pluck('distance');
   $prices = DB::table('posts')->select('price')->distinct()->get()->pluck('price');

   $post = Post::newQuery();

    if ($request->has('price')) {
    $post->where('price', $request->price);
    }

  if ($request->has('distance')) {
   $post->where('distance', $request->distance);
   }

   return view('Pages.search', [
    'distances' => $distances,
    'prices' => $prices,
    'posts' => $post->get()
   ]);

标签: laravel

解决方案


利用

query();

 $post = Post::query();

推荐阅读