как исправить «Метод Illuminate Database Schema Blueprint::class не существует».

#laravel #migration

#laravel #миграция

Вопрос:

Когда я использую php artisan migrate, я получаю это сообщение. Может ли кто-нибудь помочь мне с этим? Я искал в Интернете, но не нашел ничего, что мне помогло. (Я новичок в laravel)

моя таблица:

 <?php

use IlluminateSupportFacadesSchema;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateDatabaseMigrationsMigration;

class CreateServiceTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('service', function (Blueprint $table) {
            $table->increments('id');
            $table->string('title');
            $table->string('description');
            $table->string('icon');
            $table->class('class');
            $table->timestamps();
        });
    }

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

Комментарии:

1. извините, я нашел, что было не так

2. Если вы нашли решение, пожалуйста, отправьте его в качестве ответа. Это может помочь другим с подобной проблемой.

Ответ №1:

$table->class(‘class’); // класс не тип .

Ответ №2:

$table-> class(‘class’); класс не является типом данных, используйте String, char или другие типы данных в соответствии с вашими требованиями. Используйте ссылку ниже для ссылки на типы данных в Laravel

Ссылка на тип данных

Ответ №3:

Я столкнулся с той же проблемой. Проверьте именование ваших столбцов.

для меня:

$table-> name(«имя») вместо правильного синтаксиса, который

$table-> строка («имя»)

В контексте: вышесказанное было связано с тем, что ссылка была $table-> class(«класс») вместо правильного синтаксиса $table->string(«класс»)

введите описание изображения здесь

Ответ №4:

Я заметил, что эта ошибка связана с qoutes («), Например, мы должны написать код без qoutes:

$table->string('name')->unique()->nullable('false');

Этот приведенный выше метод является ложным, мы должны написать код так же, как показано ниже, удалить qoutes из функции с нулевым значением

$table->string('name')->unique()->nullable(false);