Php 无法在类App\bill,Laravel中使非静态方法illighted\Database\Eloquent\Model::getTable()静态

Php 无法在类App\bill,Laravel中使非静态方法illighted\Database\Eloquent\Model::getTable()静态,php,laravel-5.2,Php,Laravel 5.2,我已将模型中的方法创建为: class bill extends Model { public static function getTable() { $tables = Bill::where('order_type', '0') ->where('table_no','<>','') ->groupBy('table_no') ->get(); r

我已将模型中的方法创建为:

class bill extends Model
{
public static function getTable() {

    $tables = Bill::where('order_type', '0')
                ->where('table_no','<>','')
                ->groupBy('table_no')
                ->get();
    return $tables;
} }

在第17行的类App\bill中,
无法使非静态方法illighted\Database\Eloquent\Model::getTable()保持静态,这是一个错误。我不明白什么是错的?

问题是,雄辩的
模型
抽象类是您的
账单
的父类(您不应该打破对流,在另一个地方使用
账单
账单
)具有非静态方法:
getTable
,因此您不能以静态方式重写它。请更改此方法的名称。

您必须使该方法非静态,这将允许加载基本模型类。在控制器中实例化账单模型并调用它。如果遇到问题,请尝试此操作并返回此处。我添加了这两行$bill=new bill()$数据=$bill->getTable();现在它不是重定向到视图,黑色页面显示的应该是
Bill::where('order_type','=','0')
?这无关紧要。。如果我写入Bill::all(),则为事件;我收到同样的错误。请检查您的日志
public function bill()
{
    $data = Bill::getTable();

    return view('bill.bills');
}