У меня есть форма, в которой пользователь может добавить до 5 текстовых вводов, которые хранятся в массиве. Я хочу, чтобы пользователь мог отправлять от 1 до 5 текстовых вводов, которые будут проверены в моем контроллере. Проблема у меня в том, что любые поля, оставленные пустыми, добавляются в массив как нулевые. Таким образом, если пользователь вообще ничего не отправляет, то в массив будет добавлено 5 нулевых значений, что означает, что проверка не будет работать. Кроме того, я бы предпочел не иметь нулевые значения в массиве все вместе.
Например, если пользователь отправляет две текстовые записи, массив в базе данных будет отображаться как ["test", "test", "null", "null", "null"]
Вот код, который я использую для проверки.
$this->validate($request, [
'self_gratitudes' => 'required|array|between:1,5'
]);
Вот мой стол.
Schema::create('gratitude_journal_entries', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id');
$table->date('entry_date');
$table->string('self_gratitudes')->nullable();
$table->timestamps();
});