Laravel: how to run migration to add a field to a pivot table and insert a value if the pivot exists -


i have 2 pivot tables contains bookings attendees , programs. each record contains attendee_id , program_id of booking.
if there record entry i.e. booking means attendee registered.

i want migrate table there field registered , waitlisted. so.

  public function up()   {     //     schema::table('bookings', function(blueprint $table)     {       $table->increments('id');       $table->boolean('registered');       $table->boolean('waitlisted');     });     schema::table('prog_bookings', function(blueprint $table)     {       $table->increments('id');       $table->boolean('registered');       $table->boolean('waitlisted');     });   } 

but complete migration, need set registered 1 if booking existed in database (there record in pivot table). how do that?

migrations setting database tables , schemas, think better leave separated generating , filling values in side table.

i suggest use script job of setting registered 1. seeding convenient component database scripts in laravel. example:

# attendeeregisteredseeder.php  public function run() {     foreach (attenndee::all() $attendee) {         foreach ($attendee->programs $program) {             $program->pivot->registered = 1;             $program->pivot->save();         }     }  } 

after completed seeder script, run artisan command:

php artisan db:seed --class=attendeeregisteredseeder 

this run specified seeder class, think want in case.

hope helps.


Comments