【问题标题】:Magento 2 Controller Post throwing 404 errorMagento 2 Controller Post 抛出 404 错误
【发布时间】:2016-04-26 18:37:25
【问题描述】:

我在 Magento 2 中尝试向现有路由添加新操作时遇到了问题。

我创建了一个新模块,注册了它并创建了一个扩展现有添加到购物车功能的新操作。我在现有项目上进行了这项工作,但不得不将其移植到新安装中。现在,当我尝试 POST 到路径:<magentourl>/checkout/cart/addbulk 时,它会抛出 404。GET 请求将命中执行方法并创建日志条目。

以下是模块的组成部分。

app/code/Test/Checkout/etc/module.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
    <module name="Test_Checkout" schema_version="2.0.0" setup_version="2.0.3">
        <sequence>
            <module name="Magento_Checkout"/>
        </sequence>
    </module>
</config>

app/code/Test/Checkout/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 id="checkout" frontName="checkout">
            <module name="Test_Checkout" />
        </route>
    </router>
</config>

app/code/Test/Checkout/Controller/Cart/Addbulk.php

<?php
namespace Test\Checkout\Controller\Cart;

class Addbulk extends \Magento\Checkout\Controller\Cart\Add
{

    public function execute()
    {
        $items = $this->getRequest()->getParam('item', []);
        $this->_objectManager->get('Psr\Log\LoggerInterface')>addDebug('Posting data to addBulk');

        ...

        return $this->_goBack();
    }
}

我已启用该模块,运行bin/magento setup:upgrade,清除缓存,然后尝试发布。 当我执行 POST 时,它会返回 404 错误,在 GET 时它会按预期创建日志条目。

有没有人知道为什么这个模块没有正确迁移,或者我需要添加什么才能让它工作?

【问题讨论】:

  • 你设置了什么部署模式?您是否尝试过清除文件系统上的所有缓存文件 + 生成的代码文件?

标签: php magento2


【解决方案1】:

您在创建控制器后尝试过吗?

bin/magento setup:di:compile

或者启用Developer mode?

【讨论】:

    【解决方案2】:

    原来环境本身被破坏了。我在全新安装的 magento 2 上成功安装了我的模块。

    【讨论】:

      【解决方案3】:
      bin/magento cache:disable
      

      清除文件夹内容

      生成/代码 和 生成/元数据。

      同时检查 PHP-FPM 或 OPCACHE 缓存。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-06-26
        • 2015-07-21
        • 1970-01-01
        • 2018-06-17
        • 1970-01-01
        • 2017-05-22
        • 2013-03-02
        • 1970-01-01
        相关资源
        最近更新 更多