, когда первая форма действительна, затем откройте вторую форму. И если вторая форма также действительна, то отправьте обе. Вторая форма генерируется с данными первой формы.
EventController.php
открытая функция create () {
$categories = Category::with('subcategory')->where('is_active', 1)->get();
$seat_types = SeatType::where('is_active', 1)->get();
return view('admin.event.create', compact('categories', 'seat_types'));
}
хранилище открытых функций (запрос StoreEventRequest $) {
$event_data = $request->all();
$s_date = date('Y-m-d H:i:s', strtotime($request->start_time));
$e_date = date('Y-m-d H:i:s', strtotime($request->end_time));
$period = CarbonPeriod::create($s_date, $e_date);
$date_range = [];
$seat_types = SeatType::where('is_active', 1)->get();
foreach($period as $date)
{
$date_range[] = date('d M Y H:i:s', strtotime($date));
}
return view('admin.event.createSeat', compact('date_range'));
}
открытая функция storeSeat (StoreEventSeatRequest $ request) {
dd($request->all());
}
2.event файл блейда: - create.blade.php
<form action="{{ route('event.store') }}" >
..
</form>
3. Файл блейд-посадочного места: - createSeat.blade.php
<form action="{{ route('event.seat.store') }}">
..
</form>```
4.Request validation file of event :- StoreEventRequest.php
public function rules()
{
return [
'title' => 'required|max:100',
'category_id' => 'required',
'sub_category.*' => 'required',
'start_time' => 'required|unique:events',
'end_time' => 'required|unique:events',
'type' => 'required',
'address' => 'required|max:200',
'image.*' => 'mimes:jpeg,png,jpg,gif,svg',
'image' => 'required|array|min:2',
'banner' => 'required|image|mimes:jpeg,png,jpg,gif,svg',
];
}
5.Request validation file of eventseat :- StoreEventSeatRequest.php
public function rules()
{
return [
'seat_type.*' => 'required',
'quantity.*' => 'required|numeric|gt:0',
];
}