[英]How to get the session ID stored in database?
我試圖通過制作另一個模型Sessions
在會話表中添加額外的信息。 我正在使用以下問題答案中詳述的方法;
領域:
class Sessions extends BaseModel
{
protected $table = 'sessions';
protected $fillable = array(
'id',
'payload',
'last_activity',
'user_id',
'type',
'created_at');
public static function getCurrent()
{
return Sessions::find(Session::getId());
}
}
public function postLogin()
{
if (\Auth::biz()->attempt(\Input::only(array('email', 'password')),
\Input::get('persist', 'no') == 'yes')) {
$session = Sessions::getCurrent(); // returns NULL
// fields getting values
$session->save();
return \Redirect::route('marketer.home');
} else {
return \Redirect::back()->withInput()->with('loginFail', true);
}
}
我正在使用laravel v4.2.16與基於數據庫的會話管理。 函數Session::getId()
不返回存儲在數據庫中的id,因此我無法通過我的Sessions::getCurrent()
方法獲取當前會話的模態。
該方法之前有效,因此我們在其上構建了許多優化查詢。
嘗試這個:
$user = \Auth::user(); in the view file
然后將$ user變量打印為:
echo "<pre>";
print_r($user);
echo "</pre>";
exit;
看,如果這有幫助。
你需要調用靜態Session::unguard();
獲取id然后Session::reguard();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.