1+ <?php
2+
3+ namespace Database \Factories ;
4+
5+ use App \Models \Jurusan ;
6+ use App \Models \Komisariat ;
7+ use Illuminate \Database \Eloquent \Factories \Factory ;
8+
9+ /**
10+ * @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Anggota>
11+ */
12+ class AnggotaFactory extends Factory
13+ {
14+ /**
15+ * Define the model's default state.
16+ *
17+ * @return array<string, mixed>
18+ */
19+ public function definition (): array
20+ {
21+ // Ambil ID yang ada dari database agar relasinya valid
22+ $ jurusanIds = Jurusan::pluck ('id ' )->toArray ();
23+ $ komisariatIds = Komisariat::pluck ('id ' )->toArray ();
24+
25+ return [
26+ 'nama ' => $ this ->faker ->name (),
27+ 'foto ' => null , // Biarkan kosong untuk seeder
28+ 'alamat ' => $ this ->faker ->address (),
29+ 'kelamin ' => $ this ->faker ->randomElement (['Laki-laki ' , 'Perempuan ' ]),
30+ 'tempat_lahir ' => $ this ->faker ->city (),
31+ 'tanggal_lahir ' => $ this ->faker ->dateTimeBetween ('2000-01-01 ' , '2006-12-31 ' )->format ('Y-m-d ' ),
32+ 'no_wa ' => $ this ->faker ->phoneNumber (),
33+ // tahun_masuk_kuliah dan tahun_lk1 akan kita atur di seeder
34+ 'jurusan_id ' => $ this ->faker ->randomElement ($ jurusanIds ),
35+ 'komisariat_id ' => $ this ->faker ->randomElement ($ komisariatIds ),
36+ 'tahun_lk2 ' => null ,
37+ 'cabang_lk2 ' => null ,
38+ 'tahun_lk3 ' => null ,
39+ 'badko_lk3 ' => null ,
40+ 'tahun_lkk ' => null ,
41+ 'cabang_lkk ' => null ,
42+ 'prestasi ' => null ,
43+ 'latitude ' => $ this ->faker ->latitude (-0.1 , 0.1 ),
44+ 'longitude ' => $ this ->faker ->longitude (109.2 , 109.4 ),
45+ ];
46+ }
47+ }
0 commit comments