Magento新手继承了一个magento项目......
我有一个自定义模块,可以实现一些正常工作的新端点。
在我的api2.xml中,我将路由定义为:
<routes>
<route_catalog_rule>
<route>/unir/catalogrule/:id_rule</route>
<action_type>entity</action_type>
</route_catalog_rule>
<route_catalog_rules_by_any_field_id>
<route>/unir/catalogrules/:id_name/:id_value</route>
<action_type>collection</action_type>
</route_catalog_rules_by_any_field_id>
<route_catalog_rule_add>
<route>/unir/catalogrules/add</route>
<action_type>collection</action_type>
</route_catalog_rule_add>
</routes>
我在相应的_retrieve()
中拥有相应的_retrieveCollection()
,_create()
和V1.php
。到目前为止,所有工作都按预期进行。
但是......我需要为这个资源添加一个新的端点,希望由同一个控制器处理。它也可以是POST / create(通常由_create()
处理),但是我想用不同的方法处理,或者至少在_create()
内决定使用一个或另一个逻辑路径。
基本上,它归结为能够直接指定自定义处理程序,看起来像:
<route_catalog_rule_create>
<route>/unir/catalogrules/create</route>
<action_type>collection</action_type>
<action_name>my_custom_handler</action_name>
</route_catalog_rule_create>
或者至少能够通过路径定义直接传递额外的参数,例如:
<route_catalog_rule_create>
<route>/unir/catalogrules/add</route>
<action_type>collection</action_type>
<my_custom_param>collection</my_custom_param>
我想我可以检查做一些事情,比如检查pathinfo并根据那个决定...但它似乎没有清理,我希望(如果可能的话)添加到api2中的资源/路由定义。 XML。