1
votes

Try to make custom admin module. But got 404.

My module shows on admin navigation menu as: Reports > Contact Logs

But when i clicked Contact Logs, i got 404 with url: example.com/index.php/contactsformlog/adminhtml_contactsformlog/key/6748y9967899678tijuhy78u78

My etc/config.xml:

   .....
  <adminhtml>
        <menu>
            <report>
                <children>
                    <items module="contactsformlog">
                        <title>Contact Logs</title>
                        <sort_order>99999999999</sort_order>
                        <action>contactsformlog/adminhtml_contactsformlog</action>
                    </items>
                </children>
            </report>
        </menu>
        <acl>
            <resources>
                <all>
                    <title>Allow Everything</title>
                </all>
                <admin>
                    <children>
                        <KM_ContactsFormLog>
                            <title>ContactsFormLog Module</title>
                            <sort_order>10</sort_order>
                        </KM_ContactsFormLog>
                    </children>
                </admin>
            </resources>
        </acl>
        <layout>
            <updates>
                <contactsformlog>
                    <file>contactsformlog.xml</file>
                </contactsformlog>
            </updates>
        </layout>
    </adminhtml>   
    ......

design/adminhtml/default/default/layout/contactsformlog.xml

<?xml version="1.0"?>
<layout version="0.1.0">
    <contactsformlog_adminhtml_contactsformlog_index>
        <reference name="content">
            <block type="contactsformlog/adminhtml_contactsformlog" name="contactsformlog" />
        </reference>
    </contactsformlog_adminhtml_contactsformlog_index>
</layout>

What is wrong here? If you need any additional information Feel Free To Ask. Magento ver. 1.8.0.0.

UPDATE:

Full config.xml file : http://pastebin.com/KeMnMHEL

On my xampp this module works, but on live show 404.. Don`t know how to debug where is problem? Coppy all module files to ftp.

Have controller KM/ContactsFormLog/controllers/Adminhtml/ContactsformlogController.php and an indexAction in it.

On var/log/system.txt I found:

2014-01-21T08:15:01+00:00 DEBUG (7): Watching front: /index.php/contactsformlog/adminhtml_contactsformlog/index/key/60b1f0d8871bb3f16be54bb725908581/ 2014-01-21T08:15:01+00:00 DEBUG (7): Emptied cached quotes.

1

1 Answers

2
votes

You are missing the declaration of the router for your module.
Add this in config.xml on the same level as the adminhtml tag (as a sibling).

<adminhtml>
     ....
</adminhtml>
<admin>
    <routers>
        <contactsformlog>
            <use>admin</use>
            <args>
                <module>[Namespace]_Contactsformlog</module>
                <frontName>contactsformlog</frontName>
            </args>
        </contactsformlog>
    </routers>
</admin>

replace [Namespace] with the real namespace.