有誰知道如何創建新的magento rest api來獲取類別列表。創建新的magento Rest api以獲取magento中的類別列表
我已經看到這個鏈接 magento rest api但這沒有獲取類別列表。
如果那麼任何人知道,請解決這個..
有誰知道如何創建新的magento rest api來獲取類別列表。創建新的magento Rest api以獲取magento中的類別列表
我已經看到這個鏈接 magento rest api但這沒有獲取類別列表。
如果那麼任何人知道,請解決這個..
首先創建一個使用http://www.silksoftware.com/magento-module-creator/這個基本的模塊,然後你必須創建以下文件,並在給定的路徑添加此文件。
模塊路徑= app/code/local/Restapi/Categories
1)應用程序/代碼/本地/ RESTAPI /分類的/ etc/api2.xml
<?xml version="1.0"?>
<config>
<api2>
<resource_groups>
<catalog translate="title" module="api2">
<title>Catalog</title>
<sort_order>10</sort_order>
</catalog>
</resource_groups>
<resources>
<categories translate="title" module="api2">
<group>catalog</group>
<model>categories/api2_category</model>
<title>Categories</title>
<sort_order>10</sort_order>
<privileges>
<admin>
<retrieve>1</retrieve>
<!-- <create>1</create>
<update>1</update>
<delete>1</delete> -->
</admin>
<customer>
<retrieve>1</retrieve>
<!-- <create>1</create>
<update>1</update>
<delete>1</delete> -->
</customer>
<guest>
<retrieve>1</retrieve>
<!-- <create>1</create>
<update>1</update>
<delete>1</delete> -->
</guest>
</privileges>
<attributes>
<category_id>Category ID</category_id>
<name>Name</name>
<parent_id>Category Parent ID</parent_id>
<child_id>Category Child List</child_id>
<active>Active</active>
<level>Level</level>
<position>Position</position>
</attributes>
<routes>
<route>
<route>/categories/:cat_id</route>
<action_type>collection</action_type>
</route>
</routes>
<versions>1</versions>
</categories>
</resources>
</api2>
</config>
這裏CAT_ID是類別ID,我們通過抓取子類別。
2)應用程序/代碼/本地/ RESTAPI /分類/型號/ API2 /分類/ REST /客戶/ V1.php
<?php
class Restapi_Categories_Model_Api2_Category_Rest_Customer_V1 extends Restapi_Categories_Model_Api2_Category
{
/**
* Retrieve list of category list.
*
* @return array
*/
protected function _retrieveCollection()
{
$ruleId = $this->getRequest()->getParam('cat_id');
// $cat_mod = Mage::getModel('catalog/category')->load($ruleId)->toArray();
$cats = Mage::getModel('catalog/category')->load($ruleId);
$subcats = Mage::getModel('catalog/category')->load($ruleId)->getChildren();
$cur_category = array();
$node['category_id'] = $ruleId;
$node['name'] = $cats->getName();
$node['parent_id'] = $cats->getParentId();
$node['child_id'] = $subcats;
if($cats->getIsActive()){
$node['active'] = 1;
}else{
$node['active'] = 0;
}
$node['level'] = $cats->getLevel();
$node['position'] = $cats->getPosition();
$cur_category[] = $node;
// $subcats = Mage::getModel('catalog/category')->load($ruleId)->getAllChildren();
// $subcats = Mage::getModel('catalog/category')->load($ruleId)->getChildren();
if($subcats != '')
{
foreach(explode(',',$subcats) as $subCatid)
{
$_category = Mage::getModel('catalog/category')->load($subCatid);
$childcats = Mage::getModel('catalog/category')->load($subCatid)->getChildren();
$node['category_id'] = $subCatid;
$node['name'] = $_category->getName();
$node['parent_id'] = $_category->getParentId();
$node['child_id'] = $childcats;
if($_category->getIsActive()){
$node['active'] = 1;
}else{
$node['active'] = 0;
}
$node['level'] = $_category->getLevel();
$node['position'] = $_category->getPosition();
$cur_category[] = $node;
}
}
return $cur_category;
}
你還在這個路徑添加此相同的V1.php文件如果您有其他用戶,如管理員和來賓。
app/code/local/Restapi/Categories/Model/Api2/Category/Rest/Admin/V1.php
app/code/local/Restapi/Categories/Model/Api2/Category/Rest/Guest/V1.php
只要你想改變V1.php類文件的路徑,如客戶名= Admin。
嘿,我得到了完全相同的問題,並試圖在magento CE 1.9中的解決方案,但它不工作。相反,我得到以下錯誤:錯誤404,消息:「請求不匹配任何路由。」任何幫助? – BornToCode 2014-11-24 09:25:31
我想你在瀏覽器中寫錯了路線和網址。 – 2014-11-24 10:44:09
以前的錯誤已解決,但仍無法使用。錯誤消息:「未找到資源」。 – BornToCode 2014-11-24 10:44:30