【问题标题】:CakeDC Migrations plugin cannot initialize schema_migrations table.CakeDC Migrations 插件无法初始化 schema_migrations 表。
【发布时间】:2012-09-04 19:56:28
【问题描述】:

我正在尝试在我的 CakePHP 应用程序中使用 https://github.com/CakeDC/migrations 插件。安装后,第一步是运行Console/cake Migrations.migration -p Migrations来初始化schema_migrations表。我收到以下错误消息,告诉我 schema_migrations 不存在。

Cake Migration Shell
---------------------------------------------------------------
Notice Error: Undefined property: Sqlite::$error in [C:\development\tds\htdocs\app\Plugin\Migrations\Lib\CakeMigration.p
hp, line 419]

Error: Table schema_migrations for model SchemaMigration was not found in datasource default.
#0 C:\development\tds\htdocs\lib\Cake\Model\Model.php(3180): Model->setSource('schema_migratio...')
#1 C:\development\tds\htdocs\lib\Cake\Model\Model.php(2631): Model->getDataSource()
#2 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(158): Model->find('all', Array)
#3 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(105): MigrationVersion->getMapping('Migratio
ns')
#4 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(290): MigrationVersion->setVersion(1, 'Migra
tions', false)
#5 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(307): MigrationVersion->run(Array)
#6 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(277): MigrationVersion->resetMigration('Migr
ations')
#7 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(346): MigrationVersion->run(Array)
#8 C:\development\tds\htdocs\app\Plugin\Migrations\Lib\MigrationVersion.php(68): MigrationVersion->__initMigrations()
#9 C:\development\tds\htdocs\app\Plugin\Migrations\Console\Command\MigrationShell.php(84): MigrationVersion->__construct
(Array)
#10 C:\development\tds\htdocs\lib\Cake\Console\Shell.php(382): MigrationShell->startup()
#11 C:\development\tds\htdocs\lib\Cake\Console\ShellDispatcher.php(201): Shell->runCommand('-p', Array)
#12 C:\development\tds\htdocs\lib\Cake\Console\ShellDispatcher.php(69): ShellDispatcher->dispatch()
#13 C:\development\tds\htdocs\app\Console\cake.php(33): ShellDispatcher::run(Array)
#14 {main}

我正在使用带有 SQLite 的 CakePHP 2.2。

还有其他人遇到过这个问题吗?有人知道怎么解决吗?

【问题讨论】:

    标签: php cakephp migration cakedc


    【解决方案1】:

    CakeDC 迁移插件主要是为 MySQL 设计的。我不相信如果不进行一些修改它就可以与 SQLite 一起使用。

    【讨论】:

    • 奇怪。我认为这与数据库无关。
    • 是的,看我的回答,问题是你的数据源。它与数据源一样不可知。如果您使用 DS 不支持的字段类型,则无法在迁移中使用它。
    【解决方案2】:

    错误不是来自 Migrations 插件:

    注意错误:未定义属性:Sqlite::$error in [C:\development\tds\htdocs\app\Plugin\Migrations\Lib\CakeMigration.p 马力,第 419 行]

    AFAIR CakePHP 没有附带 SqlLite 数据源,因此您可以从哪里获得该数据源,对其进行修复并向其添加错误处理。猜它丢失是因为缺少错误属性。

    【讨论】:

    猜你喜欢
    • 2013-06-02
    • 1970-01-01
    • 2017-06-10
    • 2017-06-16
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多