переопределяющее отношение тега Модели Мага К тегу ресурса
Мне нужно переопределить Mage_Tag_Model_Resource_Tag_Relation
для сайта, над которым я работаю.
Я уже создал свой класс, который расширяет Mage_Tag_Model_Resource_Tag_Relation
:
class Web_Core_Model_Tag_Resource_Tag_Relation extends Mage_Tag_Model_Resource_Tag_Relation
{
public function loadByTagCustomer($model)
{
[...]
}
}
И поместил это в файл app/code/local/Web/Core/Model/Tag/Resource/Tag/Relation.php
В модуле config.xml (который активирован, так как есть другие части модуля, которые работают, я добавил:
<global>
<models>
<core>
<rewrite>
<mage_tag_model_resource_tag_relation>
Web_Core_Model_Tag_Resource_Tag_Relation
</mage_tag_model_resource_tag_relation>
</rewrite>
</core>
</models>
</global>
Я предполагаю, что это неправильно, так как это не работает... Как я должен объявить переопределение в моем config.xml? На правильном ли я пути?
1 answers
Вы не переписали класс ресурсов надлежащим методом и не выполнили формат класса модели ресурсов magento, поэтому он не переопределяется должным образом.
Основным форматом перезаписи класса ресурсов является
<models>
<rewriteableModuleResourceClassIndenfiter>
<rewrite>
<Rest_Of_ClassName_Of_Resource_class>Your_Write_Class_Name</Rest_Of_ClassName_Of_Resource_class>
</rewrite>
</<rewriteableModuleResourceClassIndenfiter>
</models>
Краткое описание:
Согласно as, magento tag_resource
является типом ресурса модуля magento Mage_Tage, класс префикса которого Mage_Tag_Model_Resource
Смотрите в config.xml модуля Mage_Tag
<tag_resource>
<class>Mage_Tag_Model_Resource</class>
Вы изменили код:
<models>
<tag_resource>
<rewrite>
<tag_relation>Web_Core_Model_Tag_Resource_Tag_Relation</tag_relation>
</rewrite>
</tag_resource>
</models>