2013-05-15 178 views
0

我想註冊一個沒有元數據的用戶。我有這樣的代碼,但這個使用laravel3 + sentry1創建/註冊用戶

$user = Sentry::user()->register(array(
    'email' => Input::get('email'), 
    'password' => Input::get('password') 
)); 

但後來我得到這個錯誤:

SQLSTATE[HY000]: General error: 1364 Field 'first_name' doesn't have a default value

SQL: INSERT INTO `users_metadata` (`user_id`) VALUES (?)

Bindings: array ( 0 => 1, )

我會很感激你的幫助。

回答

1

SQL錯誤建議您在表users_metadata中有一個字段first_name,這是必需的。根據源代碼github,元數據在創建方法上是可選的。

我會檢查字段first_name是否允許NULL值,如果沒有,允許它。

+0

嗨。感謝你的回答。你是對的。 first_name不允許空值,我知道爲什麼會拋出這個錯誤,但後來我問你:我必須根據我的應用程序需要更新/更改遷移嗎? – Ricbermo

+1

如果你不想插入first_name的,你必須允許NULL,因此改變你的遷移,是的。 – aebersold