Laravel 请求嵌套的父/子表单
P粉446800329
P粉446800329 2023-08-08 18:04:08
0
1
536
<p>我正在使用laravel创建一个api。我已经创建了ProductRequest和ProductPriceRequest类来进行请求验证,它们按预期工作。</p><p>一个Product可以有多个ProductPrice。</p><p>现在,为了创建ProductPrice,我需要先创建一个Product,然后再创建与该Product相关联的ProductPrice</p><p><br /></p> <pre class="brush:php;toolbar:false;">//Create product POST->http://127.0.0.1:8000/api/v1/products { "name":"product1" } //Create productprice associated with product Post->http://127.0.0.1:8000/api/v1/products/69081258758830188/productprices { "name":"productprice1" }</pre> <p>但是我想在创建产品时启用ProductPrice的创建</p> <pre class="brush:php;toolbar:false;">//Create product+productprice POST->http://127.0.0.1:8000/api/v1/products { "name": "prod2", "productPrices": [ { "name": "pp1" }, { "name": "pp2" } ] }</pre> <p>由于我已经拥有(并需要)一个ProductPriceRequest,如果请求中有一个ProductPrice,我如何在ProductRequest中使用ProductPriceRequest类来验证ProductPrice。</p><p>我是laravel(我使用的是版本10)和php的新手,没有找到任何关于这种情况的示例</p><p><br /></p>
P粉446800329
P粉446800329

全部回复(1)
P粉129275658

个人而言,在另一个ProductPriceRequest类中,我不会尝试重用相同的规则;而对于ProductRequest,我只会做一些类似的操作

'prices.*.name' => ['required', 'min:3'],
'prices.*.id' => ['numeric'],

或者无论你的规则是什么。

从技术上讲,如果你确实想要使用相同的规则,你可以将这些重复的规则放在ProductPrice模型中,然后在两个FormRequest文件中使用它们,但我不确定是否还会有其他冲突,因为在这里,数据是以数组的形式存在,而在另一种情况下(你没有展示在其他地方你使用和需要ProductPriceRequest),可能会传递另一种用于验证的结构

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板