Я все еще новичок в Laravel, поэтому я пытаюсь выучить его на определенном веб-сайте и попробовать вставить данные в базу данных mysql, используя форму.
это код вида
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>Form Tambah Data</h1>
<form action="/home/simpan" method="post">
{{ csrf_field() }}
Nama <input type="text" name="nama" required="required"><br/>
Umur <input type="number" name="umur" required="required"><br/>
Kota <input type="text" name="kota" required="required"><br/>
<input type="submit" value="Simpan Data">
</form>
</body>
</html>
, а затем это Интернет. php код
Route::get('/', function () {
return view('welcome');
});
Route::get('/home', 'HomeController@index');
Route::get('/profil', function (){
return view('profil');
});
Route::get('/home/tambah','HomeController@tambahData');
Route::post('/home/simpan','HomeController@simpan');
А это код контроллера
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class HomeController extends Controller
{
//
public function index(){
//mengambil data dari tabel siswa
$mahasiswa = DB::table('mahasiswa')->get();
//mengirim data ke view mahasiswa
return view('mahasiswa', ['mahasiswa' => $mahasiswa]);
}
public function tambahData(){
return view('form_data');
}
public function simpan(Request $request){
DB::table('mahasiswa')->insert([
'nama' => $request->nama,
'umur' => $request->umur,
'kota' => $request->kota
]);
return redirect('/home');
}
}
Таблица в базе данных имеет 4 столбца: "id_mahasiswa, нама, умур, кота "и я пытаюсь вставить данные только в 3 столбца. Но тогда, это всегда показывает эту ошибку.
"Поле 'id_mahasiswa' не имеет значения по умолчанию"
Может кто-нибудь сказать мне решение для этого?