我試圖建立在Symfony2的部分航線以下模式:Symfony2的路由:兩個可選參數 - 至少一個需要
www.myaweseomesite.com/payment/customer/{customernumber}/{invoicenumber}
兩個參數都是可選的 - 所以在下列情況下必須工作:
www.myaweseomesite.com/payment/customer/{customerNumber}/{invoiceNumber}
www.myaweseomesite.com/payment/customer/{customerNumber}
www.myaweseomesite.com/payment/customer/{invoiceNumber}
我根據symfony2 doc設置了我的routing.yml。
payment_route:
pattern: /payment/customer/{customerNumber}/{invoiceNumber}
defaults: { _controller: PaymentBundle:Index:payment, customerNumber: null, invoiceNumber: null }
requirements:
_method: GET
目前爲止效果很好。問題是,如果兩個參數都缺失或爲空,則路線不應起作用。所以
www.myaweseomesite.com/payment/customer/
不應該工作。 Symfony2有沒有辦法做到這一點?
params是怎麼樣的?他們有長度特異性還是數字?只是信件?字母和數字?因爲如果他們都是隻有數字的任何長度,這是不可能的,因爲你不知道哪個是哪個。 – 2013-03-08 20:02:33
customerNumber是一個數字,invoiceNumber是一個字符串 – marty 2013-03-08 20:04:35