Yii: Как делается ссылка на это приспособление?

#php #unit-testing #reference #yii #fixture

#php #модульное тестирование #ссылка #yii #приспособление

Вопрос:

Я следую инструкциям в книге Yii и нахожусь на CH5 (страница 101). В наших модульных тестах мы определяем массив, который указывает, какое приспособление (ы) использовать:

 class ProjectTest extends CDbTestCase {
}
public $fixtures=array (
'projects'=>'Project', );
  

Но файл fixtures создается в ‘protected/tests/fixtures/tbl_project.php ‘ и явно не называется ‘projects’. Как Yii выводит это? Примечание: моя таблица БД называется tbl_project.

Спасибо 🙂

Ответ №1:

вам нужно определить префикс таблицы для вашей базы данных, а затем снова создать модели. Вот как выглядело бы ваше определение ‘db’, если вы используете mysql (в конфигурации > main.php в разделе «компоненты»)

     'db'=>array(
        'connectionString' => 'mysql:host=localhost;dbname=test',
        'emulatePrepare' => true,
        'username' => 'root',
        'password' => '',
        'charset' => 'utf8',
                    'tablePrefix'=>'tbl_',
    ),
  

Как только у вас будет префикс на месте, yii сможет называть ваши модели без префикса.