【问题标题】:What are your Common Magento Configuration Mistakes? [closed]您常见的 Magento 配置错误是什么? [关闭]
【发布时间】:2010-03-16 00:45:26
【问题描述】:

如果每个人都讨厌 Magento,它会在编写代码之前无休止地配置您的模块。我正在尝试为即将启动的未来项目收集常见的 Magento 配置错误列表。

我正在寻找具体的例子,比如在类名上使用错误的命名约定,在设置分组类名时忘记了 <class /> 包装器。诸如此类的小事会让你发疯几个小时,直到你意识到自己的错误。

越详细越好!

【问题讨论】:

    标签: php magento convention-over-configur


    【解决方案1】:

    在 /app/etc/module/your_Module.xml 驼峰式 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>
    

    【讨论】:

      【解决方案2】:

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

      Module_UsingCamelCaseFails
      

      Module_Uselowercasetosucceed
      

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

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

      当我第一次开始 Magento 开发时,另一个需要一段时间的经典是忘记了你不能通过将控制器放在 app/code/local/Mage 中来覆盖它。

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

      【讨论】:

      • 我第二点是,如果您使用 CamelCase 您的模块名称,它将在 linux 上静默失败。我使用 NewsletterSidebar 作为我的模块名称,但它失败了。所以永远不要使用 CamelCase 作为你的模块名称。
      【解决方案3】:

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

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

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

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

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

      谢谢, 玛戈特

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-04
        • 1970-01-01
        • 2010-10-02
        • 1970-01-01
        • 2010-11-22
        • 2010-09-11
        • 2021-04-20
        • 2010-12-02
        相关资源
        最近更新 更多