我正在使用laravel创建一个api。我已经创建了ProductRequest和ProductPriceRequest类来进行请求验证,它们按预期工作。
一个Product可以有多个ProductPrice。
现在,为了创建ProductPrice,我需要先创建一个Product,然后再创建与该Product相关联的ProductPrice
//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"
}
但是我想在创建产品时启用ProductPrice的创建
//Create product+productprice
POST->http://127.0.0.1:8000/api/v1/products
{
"name": "prod2",
"productPrices": [
{
"name": "pp1"
},
{
"name": "pp2"
}
]
}
由于我已经拥有(并需要)一个ProductPriceRequest,如果请求中有一个ProductPrice,我如何在ProductRequest中使用ProductPriceRequest类来验证ProductPrice。
我是laravel(我使用的是版本10)和php的新手,没有找到任何关于这种情况的示例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
个人而言,在另一个ProductPriceRequest类中,我不会尝试重用相同的规则;而对于ProductRequest,我只会做一些类似的操作
或者无论你的规则是什么。
从技术上讲,如果你确实想要使用相同的规则,你可以将这些重复的规则放在ProductPrice模型中,然后在两个FormRequest文件中使用它们,但我不确定是否还会有其他冲突,因为在这里,数据是以数组的形式存在,而在另一种情况下(你没有展示在其他地方你使用和需要ProductPriceRequest),可能会传递另一种用于验证的结构