【问题标题】:Laravel Blade Display Error Message with Asterisk and Variable IndexLaravel Blade 显示带有星号和变量索引的错误消息
【发布时间】:2021-07-27 22:33:26
【问题描述】:

我有一个动态生成字段的表单。我验证了他们。我想显示错误信息。

protected $rules = [
       'orderLines.*.item_id' => 'required|exists:items,id'
]

验证工作正常。我收到错误消息,我可以显示如下:

                @error('orderLines.*.item_id')
                <span class="text-red-600 text-sm" role="alert">{{ $message }}</span>
                @enderror

Asterisk 一次显示所有行的 item_id 错误。我只想显示一个实例。我可以通过传递一个绝对索引值,例如

                @error('orderLines.0.item_id')
                <span class="text-red-600 text-sm" role="alert">{{ $message }}</span>
                @enderror

我不想将 * 替换为绝对值,例如 0 或 1 或 2。相反,我有一个正在运行的索引,我想使用索引变量。怎么做?尝试了以下。它不起作用。

            @error('orderLines.{$index}.item_id')
            <span class="text-red-600 text-sm" role="alert">{{ $message }}</span>
            @enderror

【问题讨论】:

    标签: laravel laravel-blade laravel-8 laravel-validation


    【解决方案1】:

    你能做类似的事情吗 @error("orderLines.{$index}.item_id")&lt;span class="text-red-600 text-sm" role="alert"&gt;{{ $message }}&lt;/span&gt;@enderror

    【讨论】:

    • 这与我尝试的唯一区别是引号。我试过单引号,你说双引号。有效。你能解释一下它们有什么不同吗?
    • 基本上是它的变量插值,一种在字符串之间连接变量的直接方式。您还可以将答案标记为已批准并投票吗?
    猜你喜欢
    • 2017-11-26
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-29
    • 2016-09-25
    • 2014-12-09
    • 1970-01-01
    相关资源
    最近更新 更多