Использование миграции для вставки или изменения структуры таблицы для меня не проблема. Но у меня проблемы с изменением данных внутри таблицы с помощью модели. Моя идея - сделать что-то вроде этого:
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?