public function store(StoreCondominiumRequest $request):RedirectResponse
{
// Validate the incoming data
$validatedData = $request->validated();
DB::beginTransaction();
// Create a new Location
$location = new Location();
$location->P_ID = $validatedData['province'];
$location->D_ID = $validatedData['district'];
$location->C_ID = $validatedData['city'];
$location->Street_name = $validatedData['street_name'];
$location->save(); // Save the Location instance
// Create a new Condominium instance (similar to location creation)
$condominium = new Condominium();
$condominium->condo_name = $validatedData['condo_name'] ?? 'Unnamed Condominium';
$condominium->Admin_ID = User::where('usertype', 'admin')->latest('id')->firstOrFail()->id; // Retrieve latest admin user
$condominium->L_ID = $location->L_ID; // Use the L_ID from the saved Location instance
$condominium->Total_buildings = $validatedData['total_buildings'];
$condominium->Contact_No = $validatedData['contact_no'] ?? 'N/A'; // Optional fallback for contact_no
$condominium->TotalUnits = $validatedData['total_units'];
// Handle condo image upload
if ($request->hasFile('condo_image')) {
$condominium->condo_image = $request->file('condo_image')->store('condos', 'public');
}
$condominium->save(); // Save the Condominium record
return redirect()->route('condominiums.index')->with('success', 'Condominium created successfully!');
}
我想将经过验证的数据存储到公寓表
如果问题是在开始交易后数据没有保存到各个表,那是因为您尚未提交交易,因此查询并未持续到相应的表。完成数据库交互完成之前,您需要在继续执行其余的实现之前包括DB :: commit()。
$condominium->save(); // Save the Condominium record
DB::commit();
return redirect()->route('condominiums.index')->with('success', 'Condominium created successfully!');