2

我已将 Magento 安装从预览系统移动到我的本地机器以进行开发和测试。

我已经在数据库中设置了我的 V-Host 的 BASE URL。

前端工作,但我无法进入管理面板。

如果我登录,我收到以下错误消息:

No region found within the locale 'de'

Trace:
#0 /var/www/myProjectName/lib/Zend/Currency.php(101): Zend_Currency->setLocale(NULL)
#1 /var/www/myProjectName/app/code/core/Mage/Core/Model/Locale.php(575): Zend_Currency->__construct('USD', NULL)
#2 /var/www/myProjectName/app/code/core/Mage/Directory/Model/Currency.php(233): Mage_Core_Model_Locale->currency('EUR')
#3 /var/www/myProjectName/app/code/core/Mage/Directory/Model/Currency.php(216): Mage_Directory_Model_Currency->formatTxt(NULL, Array)
#4 /var/www/myProjectName/app/code/core/Mage/Directory/Model/Currency.php(197): Mage_Directory_Model_Currency->formatPrecision(NULL, 2, Array, true, false)
#5 /var/www/myProjectName/app/code/core/Mage/Adminhtml/Block/Dashboard/Bar.php(82): Mage_Directory_Model_Currency->format(NULL)
#6 /var/www/myProjectName/app/code/core/Mage/Adminhtml/Block/Dashboard/Bar.php(62): Mage_Adminhtml_Block_Dashboard_Bar->format(NULL)
#7 /var/www/myProjectName/app/code/core/Mage/Adminhtml/Block/Dashboard/Totals.php(74): Mage_Adminhtml_Block_Dashboard_Bar->addTotal('Revenue', NULL)
#8 /var/www/myProjectName/app/code/core/Mage/Core/Block/Abstract.php(238): Mage_Adminhtml_Block_Dashboard_Totals->_prepareLayout()
#9 /var/www/myProjectName/app/code/core/Mage/Core/Model/Layout.php(456): Mage_Core_Block_Abstract->setLayout(Object(Mage_Core_Model_Layout))
#10 /var/www/myProjectName/app/code/core/Mage/Adminhtml/Block/Dashboard.php(50): Mage_Core_Model_Layout->createBlock('adminhtml/dashb...')
#11 /var/www/myProjectName/app/code/core/Mage/Core/Block/Abstract.php(238): Mage_Adminhtml_Block_Dashboard->_prepareLayout()
#12 /var/www/myProjectName/app/code/core/Mage/Core/Model/Layout.php(456): Mage_Core_Block_Abstract->setLayout(Object(Mage_Core_Model_Layout))
#13 /var/www/myProjectName/app/code/core/Mage/Core/Model/Layout.php(472): Mage_Core_Model_Layout->createBlock('adminhtml/dashb...', 'dashboard')
#14 /var/www/myProjectName/app/code/core/Mage/Core/Model/Layout.php(239): Mage_Core_Model_Layout->addBlock('adminhtml/dashb...', 'dashboard')
#15 /var/www/myProjectName/app/code/core/Mage/Core/Model/Layout.php(205): Mage_Core_Model_Layout->_generateBlock(Object(Mage_Core_Model_Layout_Element), Object(Mage_Core_Model_Layout_Element))
#16 /var/www/myProjectName/app/code/core/Mage/Core/Model/Layout.php(210): Mage_Core_Model_Layout->generateBlocks(Object(Mage_Core_Model_Layout_Element))
#17 /var/www/myProjectName/app/code/core/Mage/Core/Controller/Varien/Action.php(344): Mage_Core_Model_Layout->generateBlocks()
#18 /var/www/myProjectName/app/code/core/Mage/Core/Controller/Varien/Action.php(269): Mage_Core_Controller_Varien_Action->generateLayoutBlocks()
#19 /var/www/myProjectName/app/code/core/Mage/Adminhtml/Controller/Action.php(275): Mage_Core_Controller_Varien_Action->loadLayout(NULL, true, true)
#20 /var/www/myProjectName/app/code/core/Mage/Adminhtml/controllers/DashboardController.php(40): Mage_Adminhtml_Controller_Action->loadLayout()
#21 /var/www/myProjectName/app/code/core/Mage/Core/Controller/Varien/Action.php(419): Mage_Adminhtml_DashboardController->indexAction()
#22 /var/www/myProjectName/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('index')
#23 /var/www/myProjectName/app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#24 /var/www/myProjectName/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#25 /var/www/myProjectName/app/Mage.php(683): Mage_Core_Model_App->run(Array)
#26 /var/www/myProjectName/index.php(87): Mage::run('', 'store')
#27 {main}

我可以在任何地方设置区域吗?我在谷歌上找到的一切都帮不了我。告诉我你还想知道什么。

我希望你能帮帮我!

谢谢smo

4

3 回答 3

1

所以基本上:在你的数据库中找到 core_config_data 并删除 path = general 的行

于 2015-07-21T15:43:32.047 回答
0

我遇到了同样的问题,但是没有任何其他路径和内容的“通用”配置条目,所以我需要更深入地调试问题。

顺便说一句 - 您可以像这样搜索配置条目:

SELECT * FROM core_config_data WHERE core_config_data.path = 'general';

对我来说,这似乎是一个仅限 Firefox 的问题,我认为它超出了浏览器的语言设置。它在 Zend 货币处理中。只有 Firefox 有问题 - Chrome、Edge、Internet Explorer 运行良好!

所以我修复了 Magento-Code 有点脏但它有效:

复制lib/Zend/Currency.phpapp/code/local/Zend/Currency.php并编辑它。现在您可以覆盖 Zend-Framework 文件。

转到复制的以下行:

public function setLocale($locale = null)
        #require_once 'Zend/Locale.php';
        try {
            $locale = Zend_Locale::findLocale($locale);

添加最后一行:

public function setLocale($locale = null)
    {
        #require_once 'Zend/Locale.php';
        try {
            $locale = Zend_Locale::findLocale($locale);
            if ( $locale == 'de' ) $locale = 'de_DE';       // zend fix the firefox-locale error

之后,您可以再次编辑产品!

此 Variant 也可从覆盖代码中更新。

希望有帮助!

于 2018-10-18T09:24:04.647 回答
-1

碰巧区域设置是根据您的浏览器区域设置检测定义的。您可以喜欢或不喜欢这种行为,但在这种情况下,这就是您收到此错误消息的原因。

要解决此问题,您必须更改优先级或切换浏览器支持的区域设置。我所说的优先级是浏览器提供支持的语言列表。例如,您可能有类似的东西Accept-Language: da, en-gb;q=0.8, en;q=0.7

在您的情况下,它会搜索de,但您的浏览器不支持它。因此,如果您使用这个或类似的东西,您可以使用 firefox 的“快速语言环境”切换到 en-US 或 de-DE,以防止此类错误。这不是 Magento 中的一种,我认为这是一种通缉行为。

于 2013-08-17T17:49:26.127 回答