Laravel 请求嵌套的父/子表单
P粉446800329
P粉446800329 2023-08-08 18:04:08
[PHP讨论组]
<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-&gt;http://127.0.0.1:8000/api/v1/products { "name":"product1" } //Create productprice associated with product Post-&gt;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-&gt;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),可能会传递另一种用于验证的结构

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号