Прежде всего, я уже проверял, что в другом контроллере (не в контроллере ресурсов) мой сеанс работает очень хорошо, но когда я это сделал в контроллере ресурсов, код для получения сеанса не работает.
Вот мой контроллер ресурсов
<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
//tambahan
use DB;
use Session;
//model
use App\_admins;
use App\Mahasiswas;
class MahasiswaController extends Controller
{
protected $data;
protected $token;
public function __contruct(){
$this->data = array();
$this->middleware(function ($request, $next) {
$this->token = $request->session()->get('_admin_id');
if (!$request->session()->has('_admin_id')) {
abort(404);
}
return $next($request);
});
}
private function user($token){
$this->data['query'] = _admins::find($token);
}
public function index(){
echo $this->token;
}
Существует более публичная функция, но она по-прежнему пусто, так что я не показывать его здесь, чтобы избежать путаницы. А вот мой маршрут в web.php:
Route::group(['namespace' => 'Admin'],function(){
Route::resource('/admin/mahasiswa','MahasiswaController');
Route::resource('/admin/nilai','NilaiController');
});
Произвольные ошибки? Вы вызываете '$ request' в свой конструктор, но я не вижу его в качестве параметра? Попробуйте ввести намеки типа: '__construct (Request $ request)'. – camelCase
@camelCase okay Я добавляю это, но его все еще тот же, я до сих пор не получаю никаких данных с моей сессии, этот код отлично работает в другом контроллере (а не контроллере ресурсов) –
Является ли он возвратом 'null', если вы' dd ($ request- > session) 'в вашем' constructor'? – camelCase