我有以下验证规则:
[
MenuItem::MENU_ITEM_NAME => 'required|unique:menu_items,name',
MenuItem::MENU_ITEM_DESCRIPTION => 'nullable',
MenuItem::MENU_ITEM_CATEGORY => 'required|exists:categories,id',
MenuItem::MENU_ITEM_SIDE => 'nullable|boolean',
MenuItem::MENU_ITEM_SIDE_ONLY => 'nullable|boolean',
MenuItem::MENU_ITEM_IMAGE => 'nullable',
MenuItem::MENU_ITEM_AVAILABLE => 'nullable|boolean',
MenuItem::MENU_ITEM_ACTIVE => 'nullable|boolean',
MenuItem::MENU_ITEM_PRICING => 'required',
]
他们工作正常,直到我需要实现这个测试用例:
定价又名MenuItem::MENU_ITEM_PRICING
是一个数组数组。我需要检查 whenMenuItem::MENU_ITEM_SIDE
被传递为true
thenpricing
数组必须包含一个子数组,其中包含该特定项目的一些值。
前任:
[
MenuItem::MENU_ITEM_SIDE => false,
MenuItem::MENU_ITEM_PRICING => []
]
前面的例子是有效的。但:
[
MenuItem::MENU_ITEM_SIDE => true,
MenuItem::MENU_ITEM_PRICING => []
]
无效,应该是:
[
MenuItem::MENU_ITEM_SIDE => false,
MenuItem::MENU_ITEM_PRICING => [['sideprice' => 2.20]]
]
我如何检查(在我的班级内FormRequest
)是否应该包含一个带有名为 的键的子数组?MenuItem::MENU_ITEM_SIDE == true
MenuItem::MENU_ITEM_PRICING
sideprice