2013-02-07 72 views
0

我想在Kohana身份驗證中使用數字作爲用戶名。例如,用戶名100001? 雖然添加新用戶Kohana返回錯誤:ORM_Validation_Exception [0]:無法驗證數組 是否可以將用戶數字作爲Kohana中的用戶名?Kohana 3身份驗證用戶名爲號碼

+0

數字應該沒有問題。你可以發佈一段創建用戶的代碼嗎? – Manuras

回答

0

編輯:This answer看起來比我的更簡單,更好,但嘗試瞭解它。


您需要擴展用戶模型,我會幫你使用權威性與ORM的驅動程序。

步驟擴展用戶模型:

  1. 如果您還不上,配置驗證模塊使用ORM和創建數據庫表你想要的領域。 Here is a good example如何做到這一點(這是一個使用ko3.1的舊教程,但你仍然可以從中學習)。 PS .:你可以在'用戶'表中有任何列,如果你不需要,你不需要'用戶名'列。

  2. 打開並仔細閱讀本文件:MODULES/orm/classes/model/auth/user.php(它的自我記錄,我希望你明白,如果不是,停在這裏閱讀這個答案並閱讀Kohana的文檔的一些快捷方式:。Auth - Kohana User GuideAuth (orm) methodsaddons:auth

  3. 複製文件(不編輯原件)到APPPATH/classes/model/auth/user.php和編輯它,你想怎麼有些功能,你可能要修改爲:rulesfiltersunique_key(< - 有用)有創意,你也可以添加自定義功能。

  4. 測試並更改任何其他所需的內容。

 


你可以爲你喜歡的登錄方法更改爲作品。您可以通過電子郵件設置登錄,制定自定義驗證方法或解析值,然後保存到數據庫中(請參閱public function filters())。這對你使用ORM的auth模塊試圖做的任何事都有幫助......但是......如果你真的不想使用ORM,你可以建立你自己的驅動程序,learn how

我前段時間在kohana 3.2,但我認爲你不會得到3.3的問題。如果您仍然有疑問,kohana論壇上的this question可能會有所幫助。