我在 Phalcon 中定义了以下路线:
$router->add('/products', array(
'module' => 'products',
'namespace'=>'MyNameSpace\Products\Controllers\\',
'controller'=>'index',
'action' => 'index'
));
$router->add('/products/:params', array(
'module' => 'products',
'namespace'=>'MyNameSpace\Products\Controllers\\',
'controller'=>'index',
'action' => 'index',
'params' => 1
));
$router->add('/products/:action', array(
'module' => 'products',
'namespace'=>'MyNameSpace\Products\Controllers\\',
'controller'=>'index',
'action' => 1
));
$router->add('/products/:action/:params', array(
'module' => 'products',
'namespace'=>'MyNameSpace\Products\Controllers\\',
'controller'=>'index',
'action' => 1,
'params' => 2
));
我有以下格式的网址
http://www.example.com/products/3029-baggrys-oats-2-kg-pack
=> 产品详情页面,这里“3029-baggrys-oats-2-kg-pack”是一个参数
http://www.example.com/products/save-to-wish-list => 这里“save-to-wish-list”是对控制器的操作
问题 第一个 url 旨在链接到产品详细信息页面,第二个 url 旨在让用户将产品保存到愿望清单。
但两个网址都匹配第三条路线。我知道我在定义路线时一定做错了什么。谁能指出解决这种情况的更好方法是什么?
谢谢