无法将类 App\bill、Laravel 中的非静态方法 Illuminate\Database\Eloquent\Model::getTable() 设为静态

Vis*_*l B 4 php laravel-5

我在模型中创建了方法:

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

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

在控制器中我正在访问此方法

public function bill()
{
    $data = Bill::getTable();

    return view('bill.bills');
}
Run Code Online (Sandbox Code Playgroud)

Cannot make non static method Illuminate\Database\Eloquent\Model::getTable() static in class App\bill在第 17 行给出错误。我不明白出了什么问题?

Fil*_*ski 5

问题是 EloquentModel抽象类是你的父类bill(你不应该打破约定并在另一个地方使用billBill具有非静态方法:getTable所以你不能以静态方式重写它。请更改此方法的名称。