Php Laravel验证程序唯一,但用户id不工作
我有一个设置表单,用户可以在其中更新他们的信息 我的验证代码看起来像Php Laravel验证程序唯一,但用户id不工作,php,laravel,Php,Laravel,我有一个设置表单,用户可以在其中更新他们的信息 我的验证代码看起来像 $rules = array( 'active' => 'required', 'email' => 'email', 'username' => "required|alphaNum|unique:users,username,{{$id}}", 'password' => 'sometimes|min:3'
$rules = array(
'active' => 'required',
'email' => 'email',
'username' => "required|alphaNum|unique:users,username,{{$id}}",
'password' => 'sometimes|min:3'
);
$id
包含当前用户的用户id
但是我不断地得到用户名已经被使用。
当用户名
值是用户的当前用户名时出现错误消息
我还尝试了以下行:
'username'=>“required | alphaNum | unique:users,username,”.$id,
要将变量嵌入字符串,必须使用“
双引号:
$rules = array(
'active' => 'required',
'email' => 'email',
'username' => "required|alphaNum|unique:users,username,{{$id}}",
'password' => 'sometimes|min:3'
);
我必须将字符串转换为$id,因此:
'username'=>“必需的| alphaNum |唯一的:用户,用户名,”。(字符串)$id,
如果将primaryKey用作varchar。重要的是,给定的$id没有空格(修剪)。这让我花了几个小时才发现这一点。嗨,即使使用双引号,它也会返回用户名已被使用。通过查看似乎,“$id
是正确的方法。但您要将其与之进行比较的列是用户名,而不是用户id。