Получить зарегистрированный пользователь laravel 5.3 метод загрузки Модель - PullRequest
0 голосов
/ 08 июня 2018

Я пытаюсь подать заявку на globalscope, ведьма использует данные зарегистрированного пользователя, затем я пытаюсь получить зарегистрированного пользователя, но получил нулевое значение.

namespace tracker;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Notifications\Notifiable;
use Illuminate\Support\Facades\Auth;
use tracker\Scopes\IntegradorScope;

class Cliente extends Model
{
use Notifiable;

protected $table = "clientes";
protected $casts = [
    'reter_iss' => 'boolean',
    'simples_nacional' => 'boolean',
    'taxa_emissao_boleto' => 'boolean'
];

public function integradores()
{
    return $this->belongsToMany('tracker\Integrador', 'integrador_cliente', 'cliente_id', 'integrador_id');
}

public function veiculos()
{
    return $this->hasMany('tracker\Veiculo', 'cliente_id', 'id');
}

public function usuarios()
{
    return $this->hasMany('tracker\User', 'cliente_id', 'id');
}

/**
 * The "booting" method of the model.
 *
 * @return void
 */
protected static function boot()
{
    parent::boot();
    if (php_sapi_name() != 'cli') {
        $user = Auth::user();


        if (is_object($user)) {
            if ($user->role->first()->label == 'cliente') {
                static::addGlobalScope('Cliente', function ($builder) use ($user) {
                    $builder->where('id', $user->cliente_id);
                });
            } elseif ($user->role->first()->label != 'admin' && $user->integrador_id != 0) {
                static::addGlobalScope('Integrador', function ($builder) use ($user) {
                    $builder->whereHas('integradores', function ($q) use ($user) {
                        $q->where('integrador_id', $user->integrador_id);
                    });
                });
            }
        }
    }
}

}

В загрузкеметод я не могу получить пользователя по фасаду Auth.У меня уже есть другие модели, которые получают зарегистрированного пользователя, как этот код, но эта модель не получает зарегистрированного пользователя.

Есть ли какое-то решение для этого?

...