找不到 Magento 2 新模块路由
Magento 2 New Module Route Not Found
我遇到了一个问题,当我尝试浏览时找不到我的新模块。
这是代码的详细信息。
Ced/CsTermsAndServices/etc/Module.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Ced_TermsAndServices" setup_version="1.0.0">
</module>
</config>
Ced/CsTermsAndServices/registration.php
<?PHP
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Ced_TermsAndServices',
__DIR__
);
Ced/CsTermsAndServices/etc/frontend/routes.xml
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="standard">
<route frontName="cstermsandservices" id="cstermsandservices">
<module name="Ced_TermsAndServices"/>
</route>
</router>
</config>
Ced/CsTermsAndServices/Controller/Index/Index.php
<?php
namespace Ced\CsTermsAndServices\Controller\Index;
class Index extends \Magento\Framework\App\Action\Action
{
protected $_pageFactory;
public function __construct(
\Magento\Framework\App\Action\Context $context,
\Magento\Framework\View\Result\PageFactory $pageFactory)
{
$this->_pageFactory = $pageFactory;
return parent::__construct($context);
}
public function execute()
{
echo "Hello World";
exit;
}
}
预期路线应该是
http:///localhost/cstermsandservices/index/index
但是结果是404 not found。
有什么解决办法吗?
1) 确保遵循 vendor/module-name vendor_module-name 约定(在您的情况下,如果要遵循当前目录结构,模块名称应为 Ced_CsTermsAndServices)
2) module.xml文件名全部小写
希望这会奏效
快乐的 Magento
我遇到了一个问题,当我尝试浏览时找不到我的新模块。
这是代码的详细信息。
Ced/CsTermsAndServices/etc/Module.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Ced_TermsAndServices" setup_version="1.0.0">
</module>
</config>
Ced/CsTermsAndServices/registration.php
<?PHP
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Ced_TermsAndServices',
__DIR__
);
Ced/CsTermsAndServices/etc/frontend/routes.xml
<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
<router id="standard">
<route frontName="cstermsandservices" id="cstermsandservices">
<module name="Ced_TermsAndServices"/>
</route>
</router>
</config>
Ced/CsTermsAndServices/Controller/Index/Index.php
<?php
namespace Ced\CsTermsAndServices\Controller\Index;
class Index extends \Magento\Framework\App\Action\Action
{
protected $_pageFactory;
public function __construct(
\Magento\Framework\App\Action\Context $context,
\Magento\Framework\View\Result\PageFactory $pageFactory)
{
$this->_pageFactory = $pageFactory;
return parent::__construct($context);
}
public function execute()
{
echo "Hello World";
exit;
}
}
预期路线应该是 http:///localhost/cstermsandservices/index/index
但是结果是404 not found。 有什么解决办法吗?
1) 确保遵循 vendor/module-name vendor_module-name 约定(在您的情况下,如果要遵循当前目录结构,模块名称应为 Ced_CsTermsAndServices) 2) module.xml文件名全部小写
希望这会奏效 快乐的 Magento