8

If there's something that everybody hates about Magento it's endlessly configuring your modules before being able to write some code. I'm trying to collect a list of common Magento configuration errors for a future project that's I'm close to launching.

I'm looking for specific examples of things like using the wrong naming convention on classnames, forgetting the <class /> wrapper when setting up grouped class names. Little things like that that drive you batty for hours until you realize your error.

The more details the better!

4

3 回答 3

7

在 /app/etc/module/your_Module.xml camelcase codePool否则会失败

<?xml version="1.0"?>
<config>
    <modules>
        <Your_Module>
            <!-- <codepool>local</codepool> this will fail silently-->
            <codePool>local</codePool>
            <active>true</active>
        </Omx_Hooks>
    </modules>
</config>
于 2010-03-16T10:14:18.823 回答
2

使用moduleCreator有助于避免很多配置错误,但一个大问题(与 Elzo 的答案相比具有讽刺意味)是在模块名称中使用 camelCase。在 Windows 系统上开发时它会完美运行,但在 *nix 上会静默失败。

Module_UsingCamelCaseFails

然而

Module_Uselowercasetosucceed

我没有尝试在 *nix 上创建骆驼案例模块,因为我确实看到具有该命名约定的模块可以工作,但肯定会在 Windows->Linux 方向上造成麻烦。

在 adminhtml 中创建顶级菜单时,我也很难坚持使用 ACL。如果您的菜单项是<cms>or的子项<catalog>,则 ACL 可以正常工作,但不能作为第一类节点。

当我第一次开始 Magento 开发时,另一个经典案例是忘记了你不能通过将控制器放在app/code/local/Mage.

我很想看到一个与ConfigViewer有效相反的工具,即在您指定的事件、对象和其他值的上下文中验证您的 config.xml 并且应该存在于安装的其余部分中的工具。基本的 XSL 解析将是第一遍,然后尝试实例化任何引用的对象。不确定您将如何验证观察到的事件,但也许可以为该事件名称获取核心代码。想法?

于 2010-08-02T00:31:32.683 回答
0

重写块、模型或助手时,请确保路径指向现有块并且路径中没有拼写错误。

例如,我花了很多时间弄清楚为什么以下重写不起作用:

<blocks>  
  <adminhtml>  
     <rewrite>    <sales_order_views_tabs>Path_to_My_class</sales_order_views_tabs>  
     </rewrite>  
  </adminhtml>  
</blocks>  

如您所见,我有“视图”,它需要“视图”。因此,不存在我试图重写的块,因此没有错误,也没有重写。

艾伦,一旦我完成了 Configlint 工作,我想自己写这个案例。我在安装它时遇到问题。我在“gitHub”上发布的问题。我想做自己,因为我想参与这个项目

谢谢,玛戈茨

于 2010-04-08T03:56:26.030 回答