Не удается отобразить "Привет, мир" из пользовательского модуля


Я следую книге: Начало разработки расширения Magento. И я не могу заставить свой добавочный номер повторять "Привет, мир".

Я считал, что есть 3 области, о которых мне нужно позаботиться:

  1. Активируйте модуль с app/etc/modules/Froggyline_HappyHour.xml.

  2. Файл: app/code/community/Froggyline/HappyHour/etc/config.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <config>
        <modules>
            <Froggyline_HappyHour>
                <version>0.0.0</version>
            </Froggyline_HappyHour>
        </modules>
        <frontend>
            <routers>
                <froggyline_happyhour>
                    <use>standard</use>
                    <args>
                        <module>Froggyline_Happyhour</module>
                        <frontName>happyhour</frontName>
                    </args>
                </froggyline_happyhour>
            </routers>
        </frontend>
    </config>
    
  3. ФАЙЛ: app/code/community/Froggyline/HappyHour/controller/GreetingController.php

    <?php
    class Froggyline_HappyHour_GreetingController extends Mage_Core_Controller_Front_Action
    {
        public function helloWorldAction()
        {
            echo 'Hello World';
        }
    }
    ?>
    

Я посещаю следующий URL-адрес: http://localhost/happyhour/greeting/helloWorld и получаю Http 404.

Какой шаг я пропустил, чтобы на странице отображалось "Привет, мир"?

Author: 7ochem, 2015-05-20

3 answers

Это тест и работа

App/etc/modules/Froggyline_HappyHour.xml

<?xml version="1.0"?>
<config>
  <modules>
    <Froggyline_HappyHour>
      <active>true</active>
      <codePool>community</codePool>
      <version>0.0.0</version>
    </Froggyline_HappyHour>
  </modules>
</config>

App/code/community/Froggyline/HappyHour/etc/config.xml

<?xml version="1.0"?>
<config>
  <modules>
    <Froggyline_HappyHour>
      <version>0.0.0</version>
    </Froggyline_HappyHour>
  </modules>
  <frontend>
    <routers>
      <happyhour>
        <use>standard</use>
          <args>
            <module>Froggyline_HappyHour</module>
            <frontName>happyhour</frontName>
          </args>
      </happyhour>
    </routers>

  </frontend>

</config> 

Отсутствует папка (ы) контроллеров app/code/community/Froggyline/HappyHour/controllers/GreetingController.php

<?php
class Froggyline_HappyHour_GreetingController extends Mage_Core_Controller_Front_Action{
    public function HelloWorldAction() {

     echo "hello world"; exit;

    }
}
 5
Author: Qaisar Satti, 2015-05-20 15:46:37

Убедитесь, что номер версии в config.xml совпадает с app/etc/modules/Froggyline_HappyHour.xml

Кроме того, я никогда не видел версию 0.0.0. Попробуйте сделать это 0.1.0

 0
Author: brianwalleshauser, 2015-05-20 15:45:00

Рад, что это наконец сработало. Не забудьте также просмотреть все имена файлов...

Все в книге в порядке, за исключением этого файла:

app/code/community/Foggyline/HappyHour/etc/ config.xml

Где вы должны заменить

<routers>
  <foggyline_happyhour>
  ...
  <foggyline_happyhour>
<routers>

По

<routers>
  <happyhour>
  ...
  <happyhour>
<routers>
 -1
Author: Kris Rott, 2016-03-14 17:03:32