Я хочу хранить данные в 3 таблицах через одну регистрационную форму, но получаю ошибку.Я пробовал весь путь, но это не позволяет из-за нарушения ограничений первичного ключа
Контроллер
class UserController extends Controller
{
public function registerLawyer(Request $request){
$firstname = $request->get('firstname');
$lastname = $request->get('lastname');
$country = $request->get('country');
$role = $request->get('role');
$dob = $request->get('dob');
$email = $request->get('email');
$pass = $request->get('password');
$aop = $request->get('pracitces');
$licensenum = $request->get('licenseNumber');
$license = $request->get('license');
$data = new User();
$data->firstname = $firstname,
$data->lastname = $lastname,
$data->country = $country,
$data->role = $role,
$data->dob = $dob,
$data->email = $email,
$data->password = $pass,
$data->save();
DB::table('lawyer')->insert([
'practices' => $aop
]);
DB::table('license')->insert([
'licenseno' => $licensenum,
'institution' => $license
]);
return view('registerlawyer');
}
}
registerlawyer.blade.php
<form method="post">
<h1>Signup-Legal Professional</h1>
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
Enter Firstname :<input type="text" name="firstname" required><br>
Enter Lastname :<input type="text" name="lastname" required><br>
Country <select name="country" required="required" class="form-control">
<option value="select" selected="selected">Select Country</option>
<option value="Cameroon">Cameroon</option>
<option value="Canada">Canada</option>
<option value="Cape Verde">Cape Verde</option>
<option value="Cayman Islands">Cayman Islands</option>
<option value="Central African Republic">Central African Republic</option>
<option value="Chad">Chad</option>
<option value="Chile">Chile</option>
</select><br>
Enter Company :<input type="text" name="company" required><br>
Enter role :<input type="text" name="role" required><br>
Enter DOB :<input type="date" name="dob"><br>
Enter emailaddress :<input type="text" name="email" required><br>
Enter password :<input type="password" name="password" required><br>
Select Area Of practices <select name="pracitces">
<option>Individuals</option>
<option>Aerospace</option>
<option>Agriculture</option>
<option>Blockchain</option>
<option>Construction</option>
<option>Education</option>
<option>Electronics</option>
</select><br>
Enter License Number :<input type="number" name="licenseNumber" required><br>
Enter License Institution<input type="text" name="license" required><br>
<input type="submit" value="Submit">
</form>
Я получаю ошибку:
SQLSTATE[HY000]: General error: 1364 Field 'u_id' doesn't have a default value (SQL: insert into `lawyer` (`practices`) values
(Строительство)
Как я могу получить u_id, если пользователь недаже зарегистрированы?