使用CakePHP2.0貝塔我設法寫我現有的數據庫模式自定義登錄處理程序。一切正常,但在登錄我打印出存儲會話變量,什麼蛋糕的驗證組件所做的是整個記錄從「會員」表中的會話(其中我的用戶名+哈希來自)存儲。它存儲的數據字段與會話完全無關。例如,它存儲了成員的創建日期,他們的地址,等我所有漂亮無用的信息,我基本上只需要自己的ID,也許用戶名,姓名,電子郵件地址。CakePHP的驗證加載過多的會話變量
的違規行爲我發現:/lib/Cake/Controller/Component/AuthComponent.php線512它指出,
$this->Session->write(self::$sessionKey, $user);
所以我自定義的驗證組件返回$用戶和它將整個事件引入會話中。現在,我不想去的核心庫的編輯,因爲這個項目是一定要去的,當2.0出來進行升級。有沒有辦法在會話中存儲較少的信息?我想讓整個事情更輕量化。
可能的解決方案:將我的自定義身份驗證組件更改爲僅將我需要的字段返回到$ user變量中。對於我應該/不應該返回的數據有什麼擔憂嗎?