Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Laravel 5.x » Авторизация через Rest » 12.11.2018 17:49:22

fcnybok
Ответов: 0

Господа, такое дело, есть guard 'api', работает через passport,

'api' => [
            'driver' => 'passport',
            'provider' => 'client',
        ],

провайдер

'client' => [
             'driver' => 'eloquent',
             'model' => App\Common\Models\Clients::class,
        ],

есть метод авторизации

 public function login(Request $request)
    {
        $credention = $request->only('email', 'password');

        if(Auth::guard('api')->attempt($credention)) {

            $user = Auth::guard('api')->user();

            $this->data['token'] = $user->createToken('MyApp')->accessToken;

            return response()->json($this->data, $this->successStatus);
        }
        else{
            $this->data['error'] = 'Unauthorised';

            return response()->json($this->data, 401);
        }
    }

и вот на этой строчке 'Auth::guard('api')->attempt($credention)' выдает ошибку:
BadMethodCallException: Method Illuminate\Auth\RequestGuard::attempt does not exist. in file D:\OSPanel\domains\laravel\vendor\laravel\framework\src\Illuminate\Support\Traits\Macroable.php on line 100

В документация ничего интересного нет. Может кто сталкивался с таким или может как по другому можно сделай.

#2 Re: Lumen » Параметры роутов Lumen, помогите разобраться » 26.10.2016 18:19:44

hzone пишет:

1. "/publiv/" ??? Серьёзно ???
2.

public function editCategori($id,$id2){
        dd($id,$id2);
}

Ты походу не читая документации начал из мрамора платиновый ламборжини делать...

"/publiv/" ??? Серьёзно ???, это не серьезно, просто руки не добрались "public" убрать, пока на только на локалке развернул, а за пример спасибо.

Еще такой вопрос назрел, с не обязательными параметрами роутинг Lumen работает? в доках такого не видал, а если ставлю {id?}, ошибку кидает.

#3 Lumen » Параметры роутов Lumen, помогите разобраться » 26.10.2016 16:58:22

fcnybok
Ответов: 3

Такой вопрос, есть такой вот роут

$app->group(['prefix'=>'auth/', 'middleware' => 'BasicAuth', 'namespace' => 'App\Http\Controllers'], function($app) {
      $app->get('/cat/edit/{id}/{id2}', 'CategoryController@editCategori'); 
});

, и соответствующий ему url - http://lumen/public/auth/cat/edit/menu/123.
Пытаюсь достучатся до параметра роута {id} или {id2} в контроллере, таким образом:

 
public function editCategori(Request $request){
        dd($request->route('id'));
}
 

получаю следующую ошибку:
FatalErrorException in Request.php line 936:
Call to a member function parameter() on array
in Request.php line 936
at Application->handleShutdown() in RegistersExceptionHandlers.php line 55
at Application->Laravel\Lumen\Concerns\{closure}()
Если немного извратится можно запилить вот так:

dd($request->route('id')['2']['id2']);

,
так он выдаст, то что нужно.
Как еще можно достучаться к параметрам?

Подвал раздела