@yatort

Как обрезать длину строки, если в БД есть ограничение на кол-во символов?

Всем привет

В БД есть ограничение на длину в 50 символов и если я попробую написать 60 символов - будет ошибка, а костыль в виде длины в 500 символов на заголовок делать не хочу

Подскажите как это решается, в какую сторону копать?

Все что есть:

Стандартная форма

<form action="{{route('admin.category.update', $category)}}" method="post" enctype="multipart/form-data">
      <input type="text" class="ss_input" name="title" value="{{$category->title ?? ''}}" placeholder="">
      <button class="ss_button">Сохранить</button>
</form>


и сам метод

public function update(Request $request)
    {

        Categories::where()->where()->update([
            //
            'title' => $request->title ?? null,
            //
        ]);

        return redirect()->route('admin.category.index');
    }


Прошу помочь
  • Вопрос задан
  • 267 просмотров
Решения вопроса 1
megakor
@megakor
Go/PHP developer | ВКонтакте
public function update(Request $request)
{
    $request->validate([
        'title' => 'max:255', // где 255 - макс. длина строки
    ]);

    // ...
}

Но лучше соблюдать принцип SRP из SOLID и делать валидацию в отдельном файле Request.

Ещё в html можно добавить ограничение для input:

maxlength="50"
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
SergeyKuzmenko
@SergeyKuzmenko
Str::limit
Str::limit($request->title, 50);
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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