stockregister_report_itemcode:
pattern: /stockregister/{itemcode}/{category}/report/{subcategory}/{openingbalance}/{type}/{actunit}
defaults: { _controller: "EduAssetBundle:StockRegister:stockregisterItemcodeReport" }
requirements:
itemcode: .+
category: .+
subcategory: .+
openingbalance: .+
type: .+
actunit: .+
这里我将{actunit}作为'box / packet'传递,其分割值参数不起作用
答案 0 :(得分:0)
所有参数都有模式.+
,它是贪婪的。因此,第一个可能的参数捕获最大可能的url部分
将所有参数的模式更改为.+?
或在模式中指定参数可以包含的确切内容(例如:[a-z0-9]+
)
答案 1 :(得分:0)
有两种可能性,它可能无效(任何甚至两种):
1)。你忘了指定HTTP动词(GET,POST,PUT,DELETE等)。
2)。由于/
字符用于分隔路径元素,因此您应该在传递值时对该值进行编码。因此,请使用box%2Fpacket
代替box/packet
。