Как мне несколько раз изменить одно и то же логическое значение в двух разных таблицах? - PullRequest
0 голосов
/ 29 апреля 2020
class CreateTables extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {

         Schema::create('notes', function (Blueprint $table) {
            $table->bigIncrements('note_id');
            $table->unsignedBigInteger('patient_id');
            $table->foreign('patient_id')->references('id')->on('users');
            $table->unsignedBigInteger('doctor_id');
            $table->foreign('doctor_id')->references('id')->on('users');
            $table->unsignedBigInteger('treatment_facility_id');
            $table->foreign('treatment_facility_id')->references('tf_id')
            ->on('treatment_facilities');
            $table->integer('reason');
            $table->string('reason_text')->nullable();
            $table->string('startdate');
            $table->integer('number');
            $table->string('enddate');
            $table->integer('transport');
            $table->string('other')->nullable();
            $table->boolean('approved')->default(False);
            **$table->boolean('accept')->default(False);**
        });

        Schema::create('rides', function (Blueprint $table) {
            $table->bigIncrements('ride_id');
            $table->unsignedBigInteger('note_id');
            $table->foreign('note_id')->references('note_id')->on('notes');
            $table->string('date');
            $table->string('time');
            $table->string('pickup_time');
            $table->integer('shared_ride_id')->default(0);
            **$table->boolean('accept')->default(False);**
        });

        Schema::create('can_share_rides', function (Blueprint $table) {
            $table->bigIncrements('can_share_ride_id');
            $table->unsignedBigInteger('note_1_id');
            $table->foreign('note_1_id')->references('note_id')->on('notes');
            $table->unsignedBigInteger('note_2_id');
            $table->foreign('note_2_id')->references('note_id')->on('notes');
            $table->unsignedBigInteger('note_3_id')->nullable();
            $table->foreign('note_3_id')->references('note_id')->on('notes');
            $table->unsignedBigInteger('note_4_id')->nullable();
            $table->foreign('note_4_id')->references('note_id')->on('notes');
            $table->string('duration_matrix')->nullable();
            $table->boolean('sharing_possible')->nullable();
            **$table->boolean('accept')->default(False);**
        });

Мой вопрос заключается в том, как я могу реализовать логическое значение 'accept' в трех разных таблицах таким образом, чтобы они зависели от значения логического значения accept в таблице 'notes'. Поэтому, если функция

public static function acceptRide($noteId){
        DB::table('notes')->where('note_id', $noteId)
            ->update(['accept' => True]);
    } 

меняет значение с «Ложь» на «Истина». Значение логического значения 'accept' меняется с False на True во всех трех таблицах одновременно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...