“致命错误:未捕获的SoapFault异常:[103]属性”include_in_menu“是必需的。”当我使用Magento API创建一个类别时,我被抛弃了。
在Magento API中,它说我需要一个这样的数组,
array(
'name'=>'Newopenerp',
'is_active'=>1,
'include_in_menu'=>2,
'available_sort_by'=>'position',
'default_sort_by'=>'position'
)
当我使用Magento 1.5.1在localhost中运行我的脚本时,一切看起来都很好。在使用Magento 1.5.0的服务器中,抛出了此异常。我想知道这是否是由版本更改引起的。
我尽力调试,一天之后什么也没得到。我确保这是Magento API的问题,也许Magento 1.5.0中有另一种“include_in_menu
”数据类型。
我真的想知道这里发生了什么!
PS: 我在http://sourceforge.net/projects/jtlmage/forums/forum/1009350/topic/4028894获得了一些有用的信息。但它不是英文,所以我无法得到它的含义。希望它对任何人的帮助都有帮助!
提前致谢。
答案 0 :(得分:2)
include_in_menu
不应该是布尔值,因此1
或0
?
答案 1 :(得分:2)
请转到此路径“app/code/core/Mage/Catalog/etc/
”,然后打开此文件“wsdl.xml
”。然后转到第187行,您将找到Magento v1.5.0.1的以下代码块: -
<complexType name="catalogCategoryEntityCreate">
<all>
<element name="name" type="xsd:string" minOccurs="0" />
<element name="is_active" type="xsd:int" minOccurs="0" />
<element name="position" type="xsd:int" minOccurs="0" />
<element name="available_sort_by" type="typens:ArrayOfString" minOccurs="0" />
<element name="custom_design" type="xsd:string" minOccurs="0" />
<element name="custom_design_apply" type="xsd:int" minOccurs="0" />
<element name="custom_design_from" type="xsd:string" minOccurs="0" />
<element name="custom_design_to" type="xsd:string" minOccurs="0" />
<element name="custom_layout_update" type="xsd:string" minOccurs="0" />
<element name="default_sort_by" type="xsd:string" minOccurs="0" />
<element name="description" type="xsd:string" minOccurs="0" />
<element name="display_mode" type="xsd:string" minOccurs="0" />
<element name="is_anchor" type="xsd:int" minOccurs="0" />
<element name="landing_page" type="xsd:int" minOccurs="0" />
<element name="meta_description" type="xsd:string" minOccurs="0" />
<element name="meta_keywords" type="xsd:string" minOccurs="0" />
<element name="meta_title" type="xsd:string" minOccurs="0" />
<element name="page_layout" type="xsd:string" minOccurs="0" />
<element name="url_key" type="xsd:string" minOccurs="0" />
</all>
</complexType>
如果您遵循所有元素,您将能够知道所需的所有属性/元素。
至于你的问题,你是对的,在Magento v1.5.1.0中,元素“include_in_menu
”出现在同一属性中。但是,Magento v1.5.0.1在“wsdl.xml
”文件中没有任何此类元素,您需要从数组元素列表中删除此元素。
另外,我想告诉您,我不建议您在“complexType
”数据中添加此元素,因为这意味着您在核心&amp;当你对Magento核心进行任何升级时,这只会妨碍你的Magento。
希望它有所帮助。