尝试在 magento 模块中加载块时发现了一个意外问题。块名称是 *Mycompany_CustomerModule_Block_CustomerModuleDashboardDataBlock*(是的,名称很长,但我添加了与模块相关的所有块的模块名称,以避免将 dashboard.html 与 Magento Core 使用的混淆)。问题是,如果我尝试使用以下命令加载这样的块:
$this->getLayout()->createBlock('customermodule/customermoduledashboarddatablock')
Magento 引发异常“无效的块类型”。我不知道出了什么问题,因为我从一个完美运行的块中复制了整个文件,然后我尝试将该块重命名为更短的名称,例如简单的DashboardDataBlock。使用较短的名称,块被正确加载。
因此,我的问题是,类名称的长度是否有任何限制?我总是可以缩短类名,但我想知道是否有限制,这样我就可以避免将来遇到类似的问题。谢谢。