2013-05-15 105 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