【问题标题】:Laravel Request validation rename fieldLaravel 请求验证重命名字段
【发布时间】:2020-03-22 22:40:34
【问题描述】:

我使用 pickadate.js 并且在 laravel 验证中遇到问题。如果我将带有日期选择器的表单发送到我的应用程序,则有两个字段。 birthdaybirthday_submit。最后一个由 pickadate.js 创建,包含以下格式的日期:yyyy/mm/dd

我的模型有birthday 列。我的验证如下:

$request->validate([
            "first_name"=>"required_without:last_name",
            "email"=>"nullable|email",
            "birthday_submit"=>"nullable|date"
        ]);

如果我将它传递给 create() 函数(Eloquent),则会收到错误消息,即 birthday_submit 不存在。

有没有办法将 birthday_submit 重命名为 birthday 以便我可以批量分配它?此外,错误消息会更好,因为用户不应收到 birthday_submit 无效的错误消息。

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    您可以通过在验证之前执行以下操作来“干扰”$request 参数:

    $request->merge(['birthday' => $request->birthday_submit]);
    

    基本上你在$request 中插入另一个字段,键为birthday,值为birthday_submit

    那么你就可以在验证中使用这个字段了。

    【讨论】:

      猜你喜欢
      • 2021-03-11
      • 2017-11-17
      • 1970-01-01
      • 2018-02-27
      • 2022-09-28
      • 2016-01-25
      • 2023-03-29
      • 1970-01-01
      • 2021-04-11
      相关资源
      最近更新 更多