Laravel - при использовании make: миграция созданных таблиц в базе данных генерирует пустой файл миграции - PullRequest
0 голосов
/ 25 октября 2019

Я запускаю новую установку Laravel с чистой базой данных и файлами.

Я создал таблицу с именем "frooth", в которой есть столбцы id, title и creation_at (id PK, varchar и datetime)

Когда я запускаю команду "php artisan make: миграция frooth", созданный файл миграции пуст, содержит только функции up () и down () и ничего более (без столбцов)

Как я могу решить эту проблему, я следовал базовой конфигурации фреймворка, как описано на официальном сайте, я могу получить доступ и создавать функции в Artisan, как и ожидалось, только миграции не работают.

Я создал проект с помощьюкоманда: composer create-project --prefer-dist laravel / laravel blog

create table laravel.frooth
(
    id         int auto_increment
        primary key,
    title      varchar(250) null,
    created_at datetime     null
);

Класс PHP, созданный в базе данных / migrations / 2019_10_25_012925_frooth.php:

<?php

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

class Frooth extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        //
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        //
    }
}

Вывод на консоль:

php artisan make:migration frooth
Created Migration: 2019_10_25_012925_frooth

1 Ответ

0 голосов
/ 25 октября 2019

Удалите созданную вами таблицу вручную и удалите этот файл миграции.

Запустите php artisan make:migration create_frooths_table

Затем добавьте столбцы в новый файл миграции.

Что-то похожее на это:

<?php

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

class Frooth extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('frooths', function (Blueprint $table) {

        $table->increments('id');
        $table->string('title')->nullable();
        $table->timestamps();
          }); 
        }
    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('frooths');
    }
}

Затем запустите php artisan migrate

Для id вам может потребоваться использовать $table->bigIncrements('id'); при использовании Laravel 6

...