@yatort

Как лечить ошибку максимальной длины при записи в БД?

Всем привет

Проблема собственно в длине строки
SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 'title' at row 1 (SQL: update... ... ...


Везде пишут что надо в файл AppServiceProvider.php добавить:

use Illuminate\Support\Facades\Schema;

public function boot()
{
        Schema::defaultStringLength(191);
}


Однако все равно ошибка, вставлял и Schema::defaultStringLength(50); и Schema::defaultStringLength(10); результат одинаковый - ошибка никуда не делать

У меня стоят различные лимиты на колонки 50 / 150 / 250 в зависимости от назначения

5e91ca947b058882496659.jpeg

Подскажите как это лечить?
  • Вопрос задан
  • 3275 просмотров
Пригласить эксперта
Ответы на вопрос 1
solotony
@solotony
покоряю пик Балмера
defaultStringLength - используют для другого - что бы при дефолтной миграции указать длину строки (что бы она влезала в индекс)

ларавель ничего не знает о размере поля. это вам не джанго. поэтому весь контроль ложится на вас . добавьте в метод save вашей модели контроль длины требуемых полей (substring)
Ответ написан
Ваш ответ на вопрос

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

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