Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 28.01.2018 13:37:35

foreign key

Как вы меняете reference , foreign key когда оказывается например как в моем случаи связь должна быть на другую таблицу?

Не в сети

#2 28.01.2018 14:45:28

Re: foreign key

Если проект завершен и есть живые данные, тогда создаешь новую миграцию, убираешь FK ограничение (FK constraint) и добавляешь новое ограничение. Если проект в разработке, просто правишь миграцию и пересоздаешь все таблицы с помощью php artisan migrate:refresh

Не в сети

#3 28.01.2018 15:07:45

Re: foreign key

у меня пытается пересоздать таблицы и получаю ошибку что такая таблица уже существует хотя в down указано dropIfExist

Не в сети

#4 28.01.2018 15:12:15

Не в сети

#5 28.01.2018 15:31:27

Re: foreign key

их много но первая которая выстреливает вот

public function up()
    {
        Schema::create('person', function (Blueprint $table) {
            $table->increments('id');
            $table->string('first_name');
            $table->string('last_name');
            $table->string('email')->unique();
            $table->string('phone')->nullable();
            $table->string('nin')->nullable();
            $table->date('dob')->nullable();
            $table->timestamps();
        });

        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('email')->unique();
            $table->string('password');
            $table->string('role');
            $table->tinyInteger('active')->default(1);
            $table->rememberToken();
            $table->timestamps();

        });
    }

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

Не в сети

#6 28.01.2018 18:55:12

Re: foreign key

Без миграций не знаю как помочь. В показанной миграции ты создаешь таблицу и, если она уже существует, ты, конечно же, получишь ошибку. И еще, зачем в одной миграции создается две таблицы?

Не в сети

Подвал раздела