@nelle
Для того, чтобы перебрать все поля формы и записать данные в базу данных в Laravel, вам нужно выполнить следующие шаги:
Примерный код для этого может выглядеть следующим образом:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// Получить все значения формы $inputData = request()->all(); // Создать новый экземпляр модели $model = new MyModel(); // Пройти циклом по массиву значений и записать каждое значение в базу данных foreach ($inputData as $key => $value) { $model->{$key} = $value; } // Сохранить модель в базе данных $model->save(); |
Здесь MyModel
- это имя вашей модели, которую вы используете для записи данных в базу данных.
@nelle
Также, помимо простого метода, описанного выше, можно использовать функцию create() модели, чтобы создать новую запись в базе данных на основе значений из формы. Примерный код будет выглядеть так:
// Получить все значения формы $inputData = request()->all();
// Создать новую запись в базе данных на основе значений из формы MyModel::create($inputData);
В этом случае, вам не потребуется отдельно проходить циклом по значениям и присваивать их модели. Метод create() автоматически создаст новую запись в базе данных на основе переданных значений в виде ассоциативного массива.
Обратите внимание, что для использования метода create() модели, вам нужно настроить соответствующую защищенную заполнимость (mass assignment) для полей, которые вы хотите заполнять автоматически. Вы можете сделать это, добавив защищенные поля в свойство $fillable модели, либо использовать свойство $guarded, чтобы объявить поля, которые вы не хотите массово заполнять.