在 Yii2-advanced 中获取模型属性的未知属性

问题描述 投票:0回答:3

我的 Yii2-advanced 应用程序中有一个模型类,它具有一些属性。

public function rules()
{
    return [
        [['SESSION_TITLE', 'SESSION_DESCRIPTION', 'TRAINER_ID'], 'required'],
        [['TRAINER_ID','IS_ACTIVE', 'IS_DELETED'], 'integer'],
    ];
}

现在,我需要在模型中添加一个属性

TNI_NUMBER
,我已经在数据库表中添加了类似拼写的属性。添加模型后。

public function rules()
{
    return [
        [['SESSION_TITLE', 'SESSION_DESCRIPTION', 'TRAINER_ID'], 'required'],
        [['TRAINER_ID','TNI_NUMBER' ,'IS_ACTIVE', 'IS_DELETED'], 'integer'],
    ];
}

添加此属性后立即加载表单,表单在该特定属性上显示

Getting Unknown Property
。请注意,模型和数据库中属性的数据类型不是问题。并且数据库连接数组已经设置了
'enableSchemaCache' => true
,不能设置为
false

php yii2 yii2-advanced-app yii2-model
3个回答
0
投票
Yii::$app->cache->flush();

这对我有用,在控制器操作中调用模型类之前添加它。

注意:这仅供一次性使用,添加此行后刷新页面后,请记得评论或删除它。


0
投票

我的问题是数据库表中缺少该列。当我运行迁移时它会自行修复。


-2
投票

您需要刷新数据库架构

Yii::$app->db->schema->refresh();

您只需运行一次

您可以将“enableSchemaCache”设置为 false

© www.soinside.com 2019 - 2024. All rights reserved.