Questions tagged «admin-controller»

6
Magento 2自定义管理员操作已重定向到仪表板
我正在上Magento 2基础开发课程,并且管理路由器/控制器练习似乎已经过时了。路由器可以工作,但控制器不能工作,它始终只是重新路由到管理主页。路由器app / code / Training / Test / etc / adminhtml / routes.xml的代码: <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/framework/App/etc/routes.xsd"> <router id="admin"> <route id="test" frontName="test"> <module name="Training_Test" before="Magento_Backend" /> </route> </router> </config> 管理员控制器app / code / Training / Test / Controller / Adminhtml / Action / Index.php的代码: <?php namespace Training\Test\Controller\Adminhtml\Action; class …

2
管理控制器中的公共操作
我发现在类\Magento\Backend\App\AbstractAction(每个管理控制器操作的祖先)中,有一个称为的成员_publicActions,用于验证密钥,如下所示: if (is_array($this->_publicActions) && in_array($this->getRequest()->getActionName(), $this->_publicActions)) { return true; } 这意味着,如果其中列出了某个操作名称,则_publicActions可以在URL中没有密钥的情况下访问该操作。 这是开发和调试的福气,因为您可以像ROOT/admin/module/controller/action手动进行操作一样,而无需知道秘密管理员密钥,但是我不明白的是为什么我可以在没有秘密密钥的情况下访问产品编辑页面。 只需像这样调用任何产品编辑页面ROOT/admin/catalog/product/edit/id/{product_id_here}。 在publicActions订单(允许索引和查看),产品(用于编辑)和重定向控制器的重定向中,成员被覆盖。 现在我的问题是: 为什么在没有密钥的情况下只允许执行某些编辑操作,以及在什么时候/在没有密钥的情况下我的自定义CRUD模块中应该允许什么?

3
从后端编辑产品时如何在自定义数据库表中保存自定义字段?
我创建了一个自定义模块,以在后端的产品表单上显示自定义标签。我用了这个解决方案。 现在在选项卡上,我正在添加自定义字段以保存在自定义数据库表中。说<input type="text" name="my_new_field" value="123"> 还为管理产品保存创建了一个自定义控制器,如下所示。 在etc / di.xml中 <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <preference for="Magento\Catalog\Controller\Adminhtml\Product\Save" type="Namespace\Module\Controller\Adminhtml\Rewrite\Product\Save" /> </config> 并在Controller / Adminhtml / Rewrite / Product / Save.php中 <?php namespace Namespace\Module\Controller\Adminhtml\Rewrite\Product; class Save extends \Magento\Catalog\Controller\Adminhtml\Product\save { public function execute() { echo "hello"; print_r($_POST); die; return parent::execute(); } } 现在在execute功能中,我期望POST值为my_new_field。但是我不明白。得到后,我将使用自定义查询将数据保存在自定义表中。 我在做什么错或者应该使用其他方法? …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.