1

我在 Laravel 4 中使用 Confide 和 Entrust。

当我尝试创建一个新用户时,它不断出现一个奇怪的错误。用户存储在管理员中,我可以编辑/选择用户,但不能创建它们。出于某种原因,它在某个地方引用了错误的表。没有错误回来或任何东西,只是一个 SQL 错误。我似乎无法找到它出现的地方。

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'db.users' doesn't exist (SQL: select count(*) as aggregate from `users` where `username` = ?) (Bindings: array ( 0 => 'blah', ))

那是 SQL 错误,下面是 php 代码。

$user = new Admin();
$user->username = Input::get('username');
$user->email = Input::get('email');
$user->password = Input::get('password');
$user->save();

管理模式: http: //pastebin.com/3jEM4dFk

即使我的模式设置为从 Admin 中提取所有内容,它也会尝试从用户那里获得计数。

有人知道吗?

4

1 回答 1

3

这已经在Zizaco Confide github 问题页面上进行了报道

您需要的是自定义验证规则,因为默认规则 Confide 会检查用户表字段的唯一约束。

正如@edrands 在他的评论中所说:

"I may have solved what was causing the first point. The validation rules are checking for a unique in the users table. I just need custom rules." 
于 2013-08-16T11:00:49.810 回答