我试过做一些测试,但是cakephp没有创建de test_ {tablename}表!他正试图使用原始表格。 数据库配置:
var $test = array(
'driver' => 'mysql',
'persistent' => false,
'host' => '127.0.0.1',
'login' => 'root',
'password' => '',
'database' => 'tests_clubpets',
'encoding' => 'utf8'
);
夹具:
class AdminFixture extends CakeTestFixture {
var $name = 'Admin';
var $fields = array(
'id' => array('type' => 'integer', 'null' => false, 'default' => NULL, 'key' => 'primary'),
...
'tableParameters' => array('charset' => 'utf8', 'collate' => 'utf8_general_ci', 'engine' => 'InnoDB')
);
var $records = array(
array(
'id' => 1,
'nome' => 'Lorem ipsum dolor sit amet',
...
);
}
型号:
class AdminTestCase extends CakeTestCase {
var $fixtures = array('app.admin');
function startTest() {
$this->Admin =& ClassRegistry::init('Admin');
}
function endTest() {
unset($this->Admin);
ClassRegistry::flush();
}
}
有什么不对?
答案 0 :(得分:0)
当你创建$ test数据库连接时,cake应该尝试在该数据库中创建表。根据您应该在tests_clubpets
中的代码。确保创建数据库并且用户对表具有权限。还检查你没有做任何typeo的
答案 1 :(得分:0)
如果你想让你的表名为test_ {tablename},请使用:
'prefix' => 'test_',