1

每次我尝试查看 indexController 时,我的自定义模块都会在系统日志中生成此错误。

2012-01-25T17:23:08+00:00 CRIT (2): Not valid template file:adminhtml/base/default/template/page/2columns-right.phtml

我已经通过我的模块代码钓鱼了几个小时,似乎找不到任何问题。什么可能导致这种情况?在 adminhtml 下甚至不存在 base/default 文件夹。

4

3 回答 3

4

" base/default" 包/主题是 Magento 将在其中查找模板文件的最终文件夹。当您看到此错误时,表示 Magento 在

[current-design-package]/current-theme/template/page/2columns-right.phtml
[current-design-package]/default/template/page/2columns-right.phtml

您的问题中没有足够的信息来“找出您遇到的确切问题,但看起来您自己或通过第三方模块尝试更改根块的模板(或者可能是另一个块)在 Magento 管理控制台应用程序中到2columns-right.phtml.

但是,此模板不存在于adminhtml设计包中的任何位置。这就是您收到该错误的原因。管理控制台只有一个根模板,那就是page.phtml. 该2columns-right.phtml模板是一个前端模板,用于购物车应用程序。

如果这无助于更好地描述您的模块,以及您使用它的动机以及您期望发生的事情,任何人都需要回答您的问题。

于 2012-01-25T21:00:38.010 回答
0

您设置此模板显示的某些位置,但不能包含此模板。检查下一个地方以了解可能的问题:

app/code/core/Mage/Core/Block/Template.php

public function fetchView($fileName)
try {
    $includeFilePath = realpath($this->_viewDir . DS . $fileName);
    if (strpos($includeFilePath, realpath($this->_viewDir)) === 0) {
        include $includeFilePath;
    } else {
        Mage::log('Not valid template file:'.$fileName, Zend_Log::CRIT, null, null, true);
    }
}

检查用于包含此文件的路径。检查此类文件的权限等。希望对您有所帮助。

于 2012-01-25T17:49:22.783 回答
0

我不知道早期版本,但在 1.8 中没有 adminhtml 的“基础”包。有一个“默认”包,里面有“默认”主题。

建议创建一个新主题,而不是一个新包,以覆盖默认主题。原因是,如果您制作自己的包,回退机制将尝试在“基本”包(adminhtml 不存在)中查找它在您的包中丢失的文件。通过在默认包中创建主题,回退机制可以使用默认主题来查找文件。

然后,Alan Storm 告诉您关于后端没有此页面模板,只有前端 :) 但无论它是否存在,请确保您没有制作自己的后备机制(或 .. 创建基本包并将默认包复制到其中:)

于 2013-12-31T09:35:53.487 回答