我在Laravel遇到了一個問題。我正在用Laravel和Ajax構建「加載更多」系統的註釋,並使用Session變量來計算和跳過已加載的行。但由於某些原因,我的會話變量不會持續下去,對不明原因(嘗試整個一天來解決這個)..確定這裏是一些代碼:無法更新Laravel會話變量?
public function load_more() {
$comments = Comments::whereid(Input::get('article_id'))->orderBy('id','DESC')->skip(Session::get('loaded')->take(12)->get();
Session::set('loaded', Session::get('loaded') + 12) ;
return \Response::json($comments);
}
因此,大家可以看到我試圖遞增變量每次調用。但變量始終保持不變..當我做另一個變量,例如Session::set('another', Session::get('loaded') + 12) ;
它實際上得到了總結,我有這個變量的總和..但爲什麼它不能更新自己?
你試過'會議::設置( '裝',會議::拉( '裝')+ 12) ;'這可能是Laravel不想覆蓋已經獲得的會話密鑰的問題。 'pull'應該刪除並返回值 - 這意味着您可以將密鑰重置爲新值。 – jakehallas
剛剛嘗試..結果相同 – Nikanor
您正在返回一個json響應。如果您在視圖中查看Session('loaded')',則可能需要刷新頁面才能看到效果。你忘了這麼做嗎?在最瘋狂的可能情況下 –