class CreateCommentsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('comments', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email');
$table->text('comment');
$table->boolean('approved');
$table->integer('post_id')->unsigned();
$table->timestamps();
});
Schema::table('comments', function (Blueprint $table) {
$table->foreign('post_id')->references('id')->on('posts');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropForeign(['post_id']);
Schema::dropIfExists('comments');
}
}
Это то, что мой класс миграции выглядит, я пытался удалить таблицу из базы данных, но он выдает мне ошибку.Призыв к неопределенным метод Осветите Database Схемы MySqlBuilder :: dropForeign()
Ошибка
Призыв к неопределенным метод Осветите \ Database \ Схемы \ MySqlBuilder :: dropForeign()
Я прошел через документации, но это оленья кожа, кажется, очень помогает ,
может ли кто-нибудь указать мою ошибку и каково было бы решение?
Просто, чтобы вы знали, я новичок в laravel.Go легко на меня. Спасибо !.
Если указать только ключ, он должен быть массивом. Иначе это не сработает. –
Да, соглашение об именах для внешнего ключа при миграции - ' _ _ _foreign', правильно? –
shoieb0101
Да. В Laravel 5 вы также можете использовать только ключ, но он должен быть внутри массива, например 'dropForeign (['your_key_name'])' –