我是 Magento 的新手,目前正在学习本教程。
该教程似乎非常清晰和有用,尽管我无法获得
include(Alan/Storm/Model/Blogpost.php) [function.include]: failed to open stream: No such file or directory
要显示的错误,我的错误已打开。显然,如果我可以在下一步中按照教程所述显示模型名称,这将不是问题,但我缺少一些东西,需要一些关于我的代码的指导。
艾伦/Storm/etc/config.xml
<config>
<modules>
<Alan_Storm>
<version>0.1.0</version>
</Alan_Storm>
</modules>
<models>
<storm>
<class>Alan_Storm_Model</class>
<resourceModel>storm_mysql4</resourceModel>
</storm>
</models>
<frontend>
<routers>
<storm>
<use>standard</use>
<args>
<module>Alan_Storm</module>
<frontName>storm</frontName>
</args>
</storm>
</routers>
</frontend>
艾伦/风暴/控制器/indexController.php
class Alan_Storm_IndexController extends Mage_Core_Controller_Front_Action
{
public function indexAction() {
echo 'This is the Alan Storm Module';
}
public function testModelAction() {
$blogpost = Mage::getModel('storm/blogpost');
echo get_class($blogpost);
}
}
我曾尝试将 Alan/Storm/Model 文件夹留空,但是当我访问http://magentotest.local/storm/Index/testModel时,我只是得到一个空白屏幕。我也尝试将 Blogpost.php 添加到 Model 文件夹,但这没有帮助。
我究竟做错了什么?
编辑!
我改变了
public function testModelAction() {
$blogpost = Mage::getModel('storm/blogpost');
echo get_class($blogpost);
}
至
public function testModelAction() {
$blogpost = Mage::getModel('storm/blogpost');
echo get_class($blogposts);
}
为什么这行得通?在使用 get_class 函数之前,我没有创建一个名为 $blogposts 的变量。值得注意的是,我在数据库中的表称为 blogposts,但我看不出这将如何使脚本中的这种调整起作用。
编辑 2
新方法只显示我正在工作的控制器的名称,而不是模型/blogpost.php,这是我认为我要求的