【问题标题】:error create model in CRUD generator gii yii2 framework在 CRUD 生成器 gii yii2 框架中创建模型时出错
【发布时间】:2019-02-20 09:15:22
【问题描述】:

我使用命名空间 common\models\Artikel 的模型生成器 Gii 创建了一个模型类,并且没有错误,但是当我尝试使用 CRUD 生成器 Gii 创建模型类时,出现如下错误:

在我的模型文件夹中有一个文件夹再次命名为Artikel,然后在artikel.php 上具有该命名空间common\models\Artikel。但我不知道为什么使用 CRUD 生成器会出现此错误。

【问题讨论】:

  • 可能是自动加载问题。你能在你的项目树中显示这个模型文件并在你的composer.json中分享你的自动加载规则吗?
  • 您能否检查该文件夹中是否存在 Artikel 模型以及该文件是否具有该命名空间
  • 是的,它存在,所以在我的模型文件夹中,有一个文件夹再次命名为 Artikel,然后在 artikel.php 上有那个命名空间 common\models\Artikel .. 但我不知道为什么它使用 CRUD 时出错发电机@GabrieleCarbonai
  • 您的“模型文件夹”在哪个文件夹中?该文件必须在 common\models 文件夹中,而不是在 models\Artikel 文件夹中。您使用的是基础应用还是高级应用?
  • 如果在 Arkitel 文件夹中,则缺少文件名。在这种情况下,假设文件 Arkitel.php 在 common\models\Arkitel 中,您必须在 CRUD 中写入结构文件夹和文件名:common\models\Arkitel\Arkitel

标签: php model yii2 crud gii


【解决方案1】:

这个类的声明应该在common/models/Artikel.php 里面你应该有:

namespace common\models;

class Artikel extends \yii\db\ActiveRecord {
    // ...
}

Artikel 不应该是命名空间的一部分,它是类名。

【讨论】:

  • 啊,我记得当我在模型生成器中创建模型时,我在命名空间中输入 common\models\Artikel,所以在模型文件夹内有一个文件夹再次命名为 Artikel.. 现在当我在 CRUD 生成器中创建模型再次没有错误,因为我输入了 common\models\Artikel\Artikel .. 谢谢你提醒我类名,因为这是我第一次使用 yii2 框架
猜你喜欢
  • 1970-01-01
  • 2017-01-04
  • 2016-03-14
  • 1970-01-01
  • 2014-01-25
  • 2016-02-17
  • 1970-01-01
  • 2016-02-09
  • 1970-01-01
相关资源
最近更新 更多