public function run() { \DB::table('students')->truncate(); $faker = Faker::create(); foreach (range(1, 450) as $index) { // Set whether a student is on or off reserve $on_reserve = $faker->boolean(60); if ($on_reserve == 1) { $address = rand(15, 550) . ' Bear Creek Ave.'; $city = 'Batchewana First Nation'; } else { $address = $faker->streetAddress; $city = 'Sault Ste. Marie'; } $irs = '198' . $faker->numerify('#####') . '01'; // Choose the gender $gender = $faker->randomElement(['M', 'F']); if ($gender === 'M') { $fName = $faker->firstNameMale; } else { $fName = $faker->firstNameFemale; } // Get whether student is Elementary / Highschool $dob = $faker->dateTimeBetween('-18 years', '-5 years'); $carbonDob = Carbon::createFromFormat('Y-m-d', $dob->format('Y-m-d')); // Convert dob to string if ($carbonDob->age < 14) { $type = 'EL'; $gradelevel = [100, 101, 102, 103, 104, 105, 106, 107, 108, 109]; } else { $type = 'HS'; $gradelevel = [110, 111, 112, 113]; } $date = $faker->dateTimeThisYear; $student = Student::create(['first_name' => $fName, 'last_name' => $faker->lastName, 'irs_number' => $irs, 'gender' => $gender, 'dob' => $dob, 'on_reserve' => $on_reserve, 'band_membership' => 'BFN', 'home_street_address' => $address, 'home_street_address2' => '', 'home_city' => $city, 'home_province' => 'ON', 'home_country' => 'CA', 'home_postal_code' => $faker->postcode, 'telephone_number' => $faker->phoneNumber, 'email_address' => $faker->freeEmail, 'is_active' => $faker->boolean(95), 'on_iep' => $faker->boolean(25), 'is_speced' => $faker->boolean(40), 'type' => $type, 'created_at' => $date, 'updated_at' => $date, 'mothers_name' => $faker->firstNameFemale, 'fathers_name' => $faker->firstNameMale, 'guardians_name' => $faker->firstNameFemale . ' ' . $faker->lastName, 'lives_with' => $faker->randomElement(['MOTHER', 'FATHER', 'BOTH', 'GUARDIAN'])]); // ASSIGN STUDENT TO SCHOOL $school = School::orderBy(DB::raw('RAND()'))->first(); SecondaryStudent::create(['student_id' => $student->id, 'school_id' => $school->id, 'schoolboard_id' => $school->schoolboard_id, 'grade_level_id' => $faker->randomElement($gradelevel)]); } }