【问题标题】:Namespacing laravel/eloquent migration table entries命名空间 laravel/eloquent 迁移表条目
【发布时间】:2020-02-23 13:47:46
【问题描述】:

我正在创建一个需要多个数据库的 laravel 项目。这些数据库将使用 laravel 迁移来填充。

但是,这些迁移将在不同数据库上具有相同名称的表,例如:

  • table1.users
  • table2.users

我使用的代码如下:

public function up()
{

    // Core table
    Schema::connection('database1')->create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        // ...
    });


    // table2
    Schema::connection('database2')->create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        //...
    });
}

Laravel 存储迁移时没有任何形式的连接信息/命名空间,这意味着会产生重复错误并且迁移失败。

有谁知道对表条目进行别名或命名空间的方法?

提前致谢

【问题讨论】:

  • 您能否将课程名称添加到您的帖子中以及您遇到的错误。
  • meaning that a duplicate error is produced and the migration fails. 我不明白。
  • 当您尝试迁移两个同名表时,它会失败。正如所指出的,系统正在缓存发生冲突的表的旧版本,使得连接看起来好像没有命名空间..

标签: laravel eloquent laravel-migrations


【解决方案1】:

解决整个问题:

问题的答案与我的假设不同。它实际上要简单得多:

  • laravel 迁移表没有被删除/重建,因此;
  • 旧的数据库结构正在被持久化

解决方案:手动删除迁移表

【讨论】:

    猜你喜欢
    • 2016-03-14
    • 2015-11-25
    • 2014-09-03
    • 2017-05-05
    • 2014-06-11
    • 2014-03-15
    • 1970-01-01
    • 2018-08-20
    • 2015-07-05
    相关资源
    最近更新 更多