我将YII2高级网络应用程序上传到在线服务器。
我有2个表(公司,员工)并为这2个表生成了CRUD。在主菜单导航中给出了公司的视图。
我在backend/views/layouts/main.php
上提供的以下代码用于导航。
$menuItems = [
['label' => 'HOME', 'url' => ['/site/index']],
['label' => 'COMPANIES', 'url' => ['/companies/index']]
['label' => 'EMPLOYEES', 'url' => ['/employee/index']],
];
它在localhost
上正常运作。但在网上得到这个例外。
无效参数 - yii \ base \ InvalidParamException视图文件 不存在: /home/echosoft/public_html/echosoftware/backend/views/companies/index.php
该文件存在于该文件夹中。请帮我解决此问题。我坚持了3天。
这是backend\config.php
代码
$params = array_merge(
require(__DIR__ . '/../../common/config/params.php'),
require(__DIR__ . '/../../common/config/params-local.php'),
require(__DIR__ . '/params.php'),
require(__DIR__ . '/params-local.php')
);
return [
'id' => 'app-backend',
'basePath' => dirname(__DIR__),
'controllerNamespace' => 'backend\controllers',
'bootstrap' => ['log'],
'modules' => [],
'components' => [
'request' => [
'csrfParam' => '_csrf-backend',
],
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => true,
'identityCookie' => ['name' => '_identity-backend', 'httpOnly' => true],
],
'session' => [
// this is the name of the session cookie used for login on the backend
'name' => 'advanced-backend',
],
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning'],
],
],
],
'errorHandler' => [
'errorAction' => 'site/error',
],
],
'params' => $params,
];
这可能会有所帮助。谢谢。
答案 0 :(得分:0)
尝试使用
['label' => 'COMPANIES', 'url' => ['/companies/index']]
如果localhost是windows,而在线服务器是unix / linux,请确保你在路径名文件名中有正确的大小写 路径名unix中不区分大小写的Windows区分大小写
如果在backend\views
中您的文件夹名称为大写(backend\views\Companies
),则应使用小写字母(backend\views\companies
)更改..