所以,我有 2 个视图和 2 个控制器。第一个视图,我们称之为“A”,包含在注册帐户时获取所有用户信息的表单。提交后,第一个控制器,我们称之为“X”将把这些信息输入作为数组捕获,然后返回我的第二个视图,让我们通过这些数组将其称为“B”。最后这个 B 将向用户展示已经输入的内容,作为评论。
所以这就像:
视图 A => 控制器 X => 视图 B => 控制器 Y => 数据库
A 视图:
很抱歉向您展示那些没有代码的图像,但我相信,您只需查看我的 X 控制器即可了解结构。
X 控制器:
public function storeRegister(Request $request)
{
$validator = Validator::make($request->all(), [
'name' => ['required', 'string', 'max:255', 'regex:/^[a-zA-Z ]+$/'],
'gender' => ['required', 'string'],
'birth_place' => ['required', 'string', Rule::notIn(['', '0'])],
'birth_date' => ['required', 'date', 'date_format:Y-m-d', 'after:1900-01-01', 'before:today'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'phone_number' => ['required', 'string', 'min:9', 'max:15', 'regex:/^[0-9]+$/', 'unique:users'],
'address_province' => ['required', 'string', Rule::notIn(['', '0'])],
'address_regency' => ['required', 'string', Rule::notIn(['', '0'])],
'address_district' => ['required', 'string', Rule::notIn(['', '0'])],
'specify_address' => ['required', 'string', 'max:75'],
'package_plan' => ['required', 'string'],
]);
if($validator->fails()) {
return back()->withErrors($validator)->withInput();
}
else {
$user = new User();
$user->package_plan = $request->get('package_plan');
$user->name = $request->get('name');
$user->gender = $request->get('gender');
$user->birth_place = DB::table('provinces')
->where('id', $request['birth_place'])->pluck('name');
$user->birth_date = $request->get('birth_date');
$user->address_province = DB::table('provinces')
return view('layouts.pages.review')->with('data', $data);
}
}
如您所见,我将 $data 传递给我的 B 视图。在我的 B 视图中,用户可以看到前一个表单中的所有值,所以如果有错别字或类似的东西,他们可以返回并在提交到数据库之前修复它。
暮色呼如