gpt4 book ai didi

php - Laravel/热心 : SQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters

转载 作者:行者123 更新时间:2023-11-30 00:42:39 26 4
gpt4 key购买 nike

我正在尝试使用 Ardent 的 validate() 方法验证用户,但我总是收到 HY093 错误以及以下额外信息

(SQL:从 :userswhereemail= my.email@gmail.com 选择 count(*) 作为聚合)

我使用 Sentry2 进行“用户”表数据库迁移。

我的用户模型设置如下:

/**
* Validation Rules for ARDENT here
*/
public static $rules = [
'first_name' => 'required',
'last_name' => 'required',
'email' => 'required|email|unique::users',
'password' => 'required|between:8,32|confirmed',
'password_confirmation' => 'required|between:8,32',
];

/**
* The attributes that can be added to a new User using $user->fill()
*
* @var array
*/
protected $fillable = [
'first_name',
'last_name',
'email',
'password',
'password_confirmation'
];

/**
* Automatically removes _confirmation attributes
*
* @var boolean
*/
public $autoPurgeRedundantAttributes = true;

从表单中,我有 POST 数据,其中包括 ['email'、'first_name'、'last_name'、'password'、'password_confirmation] 及其各自的值,这些值将转到我的 UserController 中的以下函数:

public function signup() {
// Create a new User object
$user = new User();

// Populate attributes with information described in User->fillable
$user->fill( Input::all() );

// Check if info is valid using Ardent's validate() method
if ( $user->validate() ) {
....
....
....

我的代码总是在 if ( $user->validate() ) 行失败。谁能帮我解释一下这种情况?

最佳答案

问题出在这一行

'email' => 'required|email|unique::users'

应该是

'email' => 'required|email|unique:users'

根据The Laravel Docs

关于php - Laravel/热心 : SQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21642463/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com