Почему так странно заполняется поле автоинкремент?

Пробую использовать Laravel.
Вот я написал контроллер:
public function store(Request $request)
    {
        $arr = $request->input('post');
        $post = new Posts();
        $post->create(['post'=>$arr]);
        return redirect('recommendations');
    }

Модель:
class Posts extends Model
{
    protected $table = 'posts';

    protected $fillable = ['post'];
}

Форма:
<form method="post" action="/addpost">
        <div class="form-group">
            <label for="post">Добавить запись:</label>
                            <textarea rows="10" name="post" class="form-control"></textarea>
        </div>
        <input type="hidden" name="_token" value="{{ csrf_token() }}">
        <input class="btn btn-primary" type="submit">

Миграция:
public function up()
    {
        Schema::create('posts', function (Blueprint $table) {
            $table->increments('id');
            $table->text('post');
            $table->timestamps();
        });
    }

Но в БД записывается такое:
1036c5b41d58489dbe3f3d9c2cc91ed3.png
Подскажите в чем проблема? БД и сайт хостятся на ажуре.
  • Вопрос задан
  • 287 просмотров
Решения вопроса 2
idelg
@idelg
Разработчик
Не нужно менять автоинкремент. Так задумано разработчиками MySQL.

Сдвиг в 10 значений добавили чтобы поддерживать master-master архитектуру и избегать коллизий.
Ответ написан
Комментировать
@Wol_fi
php, js, mysql, highload
Выполните
SELECT @@auto_increment_increment;
и если у вас там не единица, то тогда или указать в my.cnf
auto_increment_increment = 1;
или выполнить
SET @@auto_increment_increment = 1;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
DJZT
@DJZT
Laravel - code for you
Скорее всего у вас для этой таблицы стоит шаг инкремента 10. Посмотрите в параметрах таблицы. Например через phpMyAdmin
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы