【问题标题】:Error in creating custome module in Magento 1.9.2在 Magento 1.9.2 中创建自定义模块时出错
【发布时间】:2016-02-16 04:48:32
【问题描述】:

我是 magento 的新手,我想创建一个 Hello World 模块,我遵循很多教程,但我总是收到 404 错误

我的应用程序/etc/模块文件

<?xml version="1.0"?>
<config>
    <modules>
        <Quinchy_Demo>
            <active>true</active>
            <codePool>local</codePool>
        </Quinchy_Demo>
    </modules>
</config>

我在 app/local/Quinchy/Demo 中的 Php clas 文件 这是

<?php

class Quinchy_Demo_Model_Hotel extends Mage_Core_Controller_Front_Action{

    public function indexAction()
    {
        echo "Hello Quinchy";
    }
}
?>

配置文件是

<?xml version="1.0"?> 
<config>
    <modules>
        <Quinchy_Demo>
            <version>0.1.0</version>
        </Quinchy_Demo>
    </modules>    
    <frontend>
        <routers>
            <quinchy>
                <use>standard</use>
                <args>
                    <module>Quinchy_Demo</module>
                    <frontName>quinchy</frontName>
                </args>
            </quinchy>
        </routers>
    </frontend>    
</config>

我使用这个 URL 调用这个模块

127.0.0.1/magento/index.php/quinchy,
127.0.0.1/magento/quinchy/
127.0.0.1/magento/quinchy/index

文件结构 enter image description here 请帮帮我

【问题讨论】:

  • 除了下面的答案,您需要确保您的 XML 配置完全正确(大写字母、文件名) - 所以最好发布您的文件名以及它们的一半路径和内容

标签: php magento content-management-system


【解决方案1】:

您的“模型”实际上应该是一个控制器,它是为前端或 adminhtml 区域提供内容的类的类型。模型用于处理数据。

在你的控制器上试试这个:

# File: app/code/local/Quinchy/Demo/controllers/HotelController.php
<?php

class Quinchy_Demo_HotelController extends Mage_Core_Controller_Front_Action
{
    public function indexAction()
    {
        echo "Hello Quinchy";
        exit;
    }
}

顺便说一句,你可以通过/magento/quinchy/hotel/index访问这个

【讨论】:

  • 您的代码在 app/code/local/ 中,而不是您的问题所述的 app/local 中?
  • 是的,我的代码在 app/code/local/Quinchy/Demo/controllers 中
【解决方案2】:

您的控制器应位于“app/local/Quinchy/Demo/controllers/IndexController.php”文件中。并且类名应该是 'Quinchy_Demo_IndexController' (class Quinchy_Demo_IndexController extends Mage_Core_Controller_Front_Action)。

您的扩展程序应如下所示: app/etc/modules/Quinchy_Demo.xml:

<?xml version="1.0"?>
<config>
    <modules>
        <Quinchy_Demo>
            <active>true</active>
            <codePool>local</codePool>
        </Quinchy_Demo>
    </modules>
</config>

app/code/local/Quinchy/Demo/etc/config.xml:

<?xml version="1.0"?> 
<config>
    <modules>
        <Quinchy_Demo>
            <version>0.1.0</version>
        </Quinchy_Demo>
    </modules>
    <frontend>
        <routers>
            <quinchy>
                <use>standard</use>
                <args>
                    <module>Quinchy_Demo</module>
                    <frontName>quinchy</frontName>
                </args>
            </quinchy>
        </routers>
    </frontend>
</config>

app/code/local/Quinchy/Demo/controllers/IndexController.php:

<?php
class Quinchy_Demo_IndexController extends Mage_Core_Controller_Front_Action
{
    public function indexAction()
    {
        echo "Hello Quinchy";
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-20
    • 1970-01-01
    • 1970-01-01
    • 2014-02-16
    • 1970-01-01
    • 2012-09-07
    • 2014-11-02
    • 1970-01-01
    相关资源
    最近更新 更多