我正在使用lumen 5.6并为查询生成器实现全局范围,并使用boot方法调用范围类。有人可以知道为什么protected static function boot()
在lumen 5.6
中不工作的原因是我的代码吗?
<?php
use App\Scopes\FilterSites;
use Illuminate\Database\Eloquent\Model;
class AccountTag extends Model {
var $useTable = 'tags_tbl';
var $primaryKey = 'tag_id';
protected static function boot()
{
parent::boot();
static::addGlobalScope(new FilterSites);
}
答案 0 :(得分:0)
取消注释
$app->withEloquent();
中写有bootstrap/app.php
的行。 withEloquent()方法注册 DatabaseServiceProvider 并引导 Eloquent ORM 。
您可以通过注册返回sql语句以选择模型中所有项目的路由来测试是否应用了全局过滤器。
在routes/web.php
中,
$router->get('/account-tags', function () {
return App\AccountTag::toSql();
});
浏览端点时,返回的查询应具有匹配FilterSites
的where子句