gpt4 book ai didi

php - 无法在 Yii 1.x 的迁移中使用模型

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:42:29 24 4
gpt4 key购买 nike

使用migration插入或更改表结构对我来说没问题。但是,我在使用模型更改表中的数据时遇到问题。我的想法是做这样的事情:

public function up()
{
$models = MyModel::model()->findAll();
foreach ($models as $variable) {
$variable->property = str_replace('.', ',', $variable->property);
$variable->save();
}
}

看来,我无法导入模型,因为我遇到以下错误:

*** applying m111010_084827_convert_point_2_comma
PHP Error[2]: include(MyModel.php): failed to open stream: No such file or directory

如果我之前尝试导入模型:

$modelClass = Yii::import('application.models.*');

那么错误是:

*** applying m111010_084827_convert_point_2_comma
exception 'CDbException' with message 'The table "{{mymodel}}" for active record class "MyModel" cannot be found in the database.' in C:\...\yii\framework\db\ar\CActiveRecord.php:2276

问题出在哪里?我究竟做错了什么?我应该如何以正确的方式在迁移中导入模型?或者我应该用 SQL 命令替换字符串?

最佳答案

迁移绝对是一组 SQL 命令。我建议使用 SELECT REPLACE 命令。参见 http://www.1keydata.com/sql/sql-replace.html

但是,只要包含所有必需的 php 文件,您所采用的方法也应该有效。您可能还需要基本模型:

   Yii::import('application.models.*');
Yii::import('application.models.base.*');

并确保您编辑 config/console.php 以获得正确的数据库信息。

关于php - 无法在 Yii 1.x 的迁移中使用模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7711183/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com