Черта области действия Laravel-Global не затрагивается

Кажется, я не могу найти проблему здесь. Я использую трейт, чтобы прикрепить глобальную область действия ко всем запросам Eloquent в модели. Вот моя модель

<?php namespace App;

 use Illuminate\Database\Eloquent\Model;
 use App\Club\traits\restrictToClubTrait;


class Product extends Model
{



public function category()
{
    return $this->belongsTo('App\ProductCategory', 'product_category_id', 'id');
}


public function producer()
{
    return $this->belongsTo('App\Producer', 'producer_id');
}
}

А вот черта

<?php namespace App\Club\traits;

trait restrictToClubTrait
{

/**
 * Boot the soft deleting trait for a model.
 *
 * @return void
 */
public static function bootRestrictToClubTrait()
{
    dd('p');
    static::addGlobalScope(new RestrictToClubScope);
}

}

Этот dd никогда не срабатывает, поэтому функция не должна срабатывать, я пролистал документы, но не вижу, где я ошибся.


person Casey    schedule 31.01.2015    source источник


Ответы (1)


Черты должны быть «включены» в тело класса. Подробнее здесь

use App\Club\traits\restrictToClubTrait;

class Product extends Model {
    use restrictToClubTrait;
}
person afarazit    schedule 31.01.2015
comment
черт, я знал, что это будет что-то простое. Спасибо, сэр, я отмечу правильно, как только мне будет позволено. - person Casey; 31.01.2015