【问题标题】:Method (...)__toString() must not throw an exception, caught Error: Call to a member function getOptionArray() on null方法 (...)__toString() 不得抛出异常,已捕获 Error: Call to a member function getOptionArray() on null
【发布时间】:2018-08-08 06:31:30
【问题描述】:

进入后端目录->类别时收到错误:

致命错误:方法 Magento\Ui\TemplateEngine\Xhtml\Result::__toString() 不能抛出 异常,捕获错误:调用成员函数 getOptionArray() on 空入 /home/hubert09/domains/domadeco.com/public_html/vendor/magento/module-ui/Component/Wrapper/UiComponent.php 在第 0 行

我是在将 Magento 从 2.2.0-rc 升级到 2.2.5 后发现的

感谢magento profiler,我发现问题出在: /vendor/magento/module-catalog/view/adminhtml/templates/catalog/category/edit/assign_products.phtml

$block->getGridHtml();

那一行会产生问题

=======已解决=========

由第 3 部分模块 Oneleek_DraggableProducts 引起的问题。在 2.2.5 上它不起作用。关闭该模块即可解决问题。

【问题讨论】:

    标签: php magento2


    【解决方案1】:

    如果您将 M1 迁移到 M2,那么您在 cmd 执行期间遇到以下错误未找到请求的存储。验证商店并重试。

    不要更改供应商

    模块存储文件:

    /vendor/magento/module-store/Model/StoreManager.php 或

    /vendor/magento/module-store/Model/StoreRepository.php

    只需简单地应用以下步骤:

    我最近从 Magento 1.9.3.8 迁移到 2.3.0 后遇到了同样的情况,希望我的回答能有所帮助。问题来自于删除多个商店,确切地说是其中的 96 个。我在这里尝试了所有其他答案,但仍然遇到同样的错误。

    对我来说,解决方法是从“core_config_data”中删除旧的存储数据。问题是,当 Magento 加载运行时配置数据时,它会查找旧存储并尝试解决它们。在从数据库中清理数据之前,我强烈建议您运行下面的 SELECT 查询以确保删除正确的存储。

    SELECT * FROM core_config_data WHERE scope = 'stores';

    警告:确保在运行之前备份您的数据库!

    DELETE FROM core_config_data WHERE scope_id != 1 AND scope = 'stores';

    现在执行所有magento命令,您可以看到查询修复的“未找到请求的商店。验证商店并重试”

    致命错误:方法 Magento\Ui\TemplateEngine\Xhtml\Result::__toString() 不能抛出 例外 C:\wamp64\www\mage2\vendor\magento\module-ui\Component\Wrapper\UiComponent.php 在第 0 行

    现在检查你的管理员上面的致命错误也解决了 blahhh... blahh...

    (注意致命错误_Magento\Ui\TemplateEngine\Xhtml\Result::__toString() 依赖存储模块,因此不要更改模块存储供应商 管理端网格/列表目录,您看不到正确的数据)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-16
      • 1970-01-01
      • 2019-05-12
      • 2015-04-04
      • 2022-12-27
      • 1970-01-01
      • 2017-09-09
      • 1970-01-01
      相关资源
      最近更新 更多