1

我的 Laravel 5.7 API 和 Mariadb 10.3 上有一个 POST 端点,我使用邮递员来测试我的路线,这就是问题所在。我想发送一个相同类型的对象数组,如下所示:

{  
   "Shops":[  
   {
     "name": {
        "en":"ShopEng",
        "es":"ShopESP"
      },
    "code": "0891"
   }
   ]
}

在我的数据库中。我有 Shops 表和名称字段作为 JSON 类型。

{"en":"TestEng","es":"TestESP"}

在我的请求中。我也尝试过简单但不起作用的方法。

public function rules()
    {
        return array(
            'Shops'         => 'required|array',
            'Shops.*.name.en' => 'required|unique:shops,name->en',
            'Shops.*.name.es' => 'required|unique:shops,name->es',
            'Shops.*.code'        => 'required|integer'
        );

    }

与消息。

"message": "Method Illuminate\\Validation\\Validator::validateUnique,shops,name>en does not exist.",
"exception": "BadMethodCallException",
"file": "/var/www/html/vendor/laravel/framework/src/Illuminate/Validation/Validator.php",
4

1 回答 1

0

唯一性验证规则中写的第二个参数是指数据库表中将测试唯一性规则的列,恐怕你在那里写的语法无效。

我的猜测是,您将创建一个自定义验证规则来处理这种特殊情况。

于 2019-02-13T07:02:58.030 回答