首页 > 解决方案 > 从 Laravel 迁移创建时,表中列前的空格

问题描述

有没有人遇到像我这样的问题,当我通过 Laravel 迁移创建表时有多余的空间?

而且我为这个迁移文件重新运行了几次,但仍然创建了额外的空间。

我的环境。

下面是我的图片和迁移内容。

在此处输入图像描述

在此处输入图像描述

Schema::create('plugin_packages', function (Blueprint $table) {
            $table->char('id', 36)->primary();
            $table->char('plugin_id', 36)->nullable();
            $table->char('plugin_package_device_model_id', 36)->nullable();
            $table->char('plugin_package_os_version_id', 36)->nullable();
            $table->string('version_number');
            $table->string('file');
            $table->timestamps();
            $table->softDeletes();

            $table->foreign('plugin_id')->references('id')->on('plugins')->onUpdate('cascade')->onDelete('cascade');
            $table->foreign('plugin_package_device_model_id', 'ppdm_id_foreign')->references('id')->on('plugin_package_device_models')->onUpdate('cascade')->onDelete('cascade');
            $table->foreign('plugin_package_os_version_id', 'ppov_id_foreign')->references('id')->on('plugin_package_os_versions')->onUpdate('cascade')->onDelete('cascade');
        });

谢谢你。

------2019.03.21更新-----

走到柱子\u0096\u0096前面plugin_package_os_version_id

[{"id":"14f0c766-341c-4262-9a33-0b8fc3063cad","plugin_id":"b3f09e90-cd8b-4e18-9b5e-c9176a5ea898","plugin_package_device_model_id":"a7a630e3-3fac-40c3-b3ed-61d54eb91d6f","\u0096\u0096plugin_package_os_version_id":"623eaf52-09dd-4837-aa9e-79e4f930d654","version_number":"1.0.1","file":"uploads\/application-x-dosexec\/2019-03-12\/FECEdgeServiceSETUP_3484fe18556c19479f8b6caf5c60ec98.exe","created_at":"2019-03-21 14:12:43","updated_at":"2019-03-21 14:12:43","deleted_at":null}]

------2019.03.21 更新 2--------

如果我从

$table->char('plugin_package_os_version_id', 36)->nullable();

$table->char('ppov_id', 36)->nullable();

它按预期工作。

如图所示:

在此处输入图像描述

仍然无法确定导致问题的位置。

-----2019.03.21更新3--------

迁移文件的全部内容

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreatePluginPackagesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('plugin_packages', function (Blueprint $table) {
            $table->char('id', 36)->primary();
            $table->char('plugin_id', 36)->nullable();
            $table->char('plugin_package_device_model_id', 36)->nullable();
            $table->char('plugin_package_os_version_id', 36)->nullable();
            $table->string('version_number');
            $table->string('file');
            $table->timestamps();
            $table->softDeletes();

            $table->foreign('plugin_id')->references('id')->on('plugins')->onUpdate('cascade')->onDelete('cascade');
            $table->foreign('plugin_package_device_model_id', 'ppdm_id_foreign')->references('id')->on('plugin_package_device_models')->onUpdate('cascade')->onDelete('cascade');
            $table->foreign('plugin_package_os_version_id', 'ppov_id_foreign')->references('id')->on('plugin_package_os_versions')->onUpdate('cascade')->onDelete('cascade');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('plugin_packages');
    }
}

标签: mysqllaravel-5database-migration

解决方案


尝试在终端中运行以下命令:

  1. composer dump-autoload
  2. php artisan config:cache
  3. php artisan migrate:fresh

推荐阅读