Laravel 背包表单请求输入为空
Laravel backpack form request getting empty input
Laravel 背包自动生成 crud 表单请求。我应该如何从表单请求中获取输入以在唯一验证中使用它,例如:电子邮件?
我试过dd($this),但是所有的值都是空的或null。我认为请求根本没有传递?
public function rules()
{
return [
'email' => 'required|unique:users,email', $this->id
];
}
我希望从请求中获取 ID 并将其用于我的唯一表单验证
如果你 dd($this) 你什么也得不到,因为方法 rules() 是在页面加载时调用的,而不仅仅是在表单提交时调用的。如果你想检查提交的值,你可以使用类似:
if (!$this->id) dd($this);
然后在request->parameters下可以看到请求中包含的所有字段的值
我们可以通过下面的简单方法获取id,我试过了,对我有用。
public function rules()
{
$id = $this->get('id') ?? request()->route('id');
return [
'email' => 'required|unique:users,email', $id
];
}
引用自下面提到的url
Laravel 背包自动生成 crud 表单请求。我应该如何从表单请求中获取输入以在唯一验证中使用它,例如:电子邮件?
我试过dd($this),但是所有的值都是空的或null。我认为请求根本没有传递?
public function rules()
{
return [
'email' => 'required|unique:users,email', $this->id
];
}
我希望从请求中获取 ID 并将其用于我的唯一表单验证
如果你 dd($this) 你什么也得不到,因为方法 rules() 是在页面加载时调用的,而不仅仅是在表单提交时调用的。如果你想检查提交的值,你可以使用类似:
if (!$this->id) dd($this);
然后在request->parameters下可以看到请求中包含的所有字段的值
我们可以通过下面的简单方法获取id,我试过了,对我有用。
public function rules()
{
$id = $this->get('id') ?? request()->route('id');
return [
'email' => 'required|unique:users,email', $id
];
}
引用自下面提到的url