<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Task extends Model
{
protected $dates = ['due_date'];
protected $fillable = ['name', 'project_id'];
public function scopeDueInDays($query,$days)
{
return $query->where('due_date', '>', \Carbon\Carbon::now()
->subDays($days));
}
static public function dueInDays($days)
{
return Task::where('due_date', '>', \Carbon\Carbon::now()
->subDays($days));
}
}
我想在vscode编辑器上进行方法定义。 我可以用scopeMethod。
然后我创建静态方法。有用。至少到现在为止,很好。
可以使用下面的静态方法
$task = new Task;
$tasks = $task->dueInDays($day)->get();
$tasks = Task::dueInDays($day)->get();
这种方式在使用laravel时有问题吗?
是否有人使用不带scopeMethod的静态方法?