我在我的Web應用程序中使用Laravel 4.2
,我試圖獲取當前登錄的用戶的ID。這是我在UserController.php
中完成的。laravel獲取使用Eloquent身份驗證當前登錄用戶的ID
if(Auth::attempt($credentials)){
$user = Auth::user();
return Redirect::to('admin/profile');
}else{
return Redirect::to('login');;
}
,這是我route.php
:
Route::group(['prefix' => 'admin'], function()
{
Route::resource('profile', 'AdminController', ['as'=>'package']);
});
現在在AdminController.php
我有法指數(),在那裏我試圖讓用戶loged當前的ID。從登錄頁面重定向後,我可以獲得用戶的ID,但是當我多次刷新我的個人檔案頁面時,我失去了用戶的ID,他似乎是註銷我只得到'抱歉'。 這是我的索引方法:
if (Auth::check()){
echo 'ok';
echo $id = Auth::user()->id;
}else{
echo 'sorry';
}
我該如何解決這個問題?是否與laravel auth
和Eloquent
有關?我如何獲取登錄用戶的ID?
--edit --- 如果我只是用我Route::post
不明白這個問題,我可以很容易地得到用戶id.But我想用Route:Resource
索引,編輯,更新方法。
app/config/session中的lifetime和expire_on_close的值? – 2014-10-12 07:31:00
'lifetime'=> 120 and'expire_on_close'=> false, – 2014-10-12 07:38:46
嗨Ghada,你爲什麼要在UserController中將變量$ user設置爲Auth :: user()?它似乎被使用。我想提供幫助,但需要更多關於您想要完成的內容的信息。無論如何,你是否通常不會爲管理區域設置路由過濾器?即如果你沒有登錄,你甚至不應該能夠訪問管理索引或AdminController方法..好嗎? – 2014-10-12 10:09:42