#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 сможет называть ваши модели без префикса.