Known issues with PDT

我对 PDT 还不熟,碰到很多问题,都分不清究竟是我不会用,还是 PDT 本身的错。其中一个安装在 Fedora 上的 PDT 已经用了有些日子了,配置被我改来改去,所以更加分不清是谁的错。今天狠狠心,全新下载安装了 PDT Galileo SR1 for win32 版。本来想离 Windows 远一些的,无奈,相对来说,我在 Windows 下用 PDT 比 Fedora 下更久一些,出了问题也更容易定位是什么问题。 几个小时折腾下来,终于有了结论: PHP for Windows 本来是集成 odbc 支持的,但 PDT 带来的四个 PHP 解释器不知怎么搞的,就是不支持 odbc,我也不知道去哪里 enable odbc,因为 PHP 手册上说 windows odbc 是内置的。要在 PDT 使用 odbc,那就自己安装一个原版的 PHP 吧。 在 PDT 下安装 PHP 解释器,对话框有让我填一个 php 启动配置文件,通常是 php.ini。但如果原目录下有一个… Continue reading Known issues with PDT

A good practice in naming rewritten Magento modules

Magento 里的namespace, module name, controller name, action name, class name, function name, model name, router name, xml identifier name, etc, etc 实在太过复杂,凭我的脑袋实在记不全什么时候该大写,什么时候该小写,什么时候该加一个下划线。 为了不出错,我尽量照抄 Magento source code,比如 extend Mage_Catalog 模块时,我取名 Myname_Catalog。我这个模块名作前缀重写了一些 Model 和 Block,没遇到问题。最近在重写 Controller 时,出问题了——如用/catalog/product/view/id/1 能执行重写后的 controller;但用/seo-product-page-name.html 却执行了重写前的 controller。这问题不一定是命名引起的,但我在寻找解决方案时意识到要有一个好的命名习惯。 简言之,网上讨论比较多的 Magento upgrade safe 重写规则只适合 Model 和 Block,不适合 Controller。要写出 upgrade safe Controller 也不难,就是谈的人少,不容易找到适用于最新版 Magento 的文档。有空我整理一下如何在 Magento… Continue reading A good practice in naming rewritten Magento modules