Как обновить статус в другой таблице? - PullRequest
0 голосов
/ 02 октября 2018

У меня есть две таблицы inspections и requisitions.

В таблице заявок есть поле status и значение 0 по умолчанию.Я хочу, чтобы когда пользователь нажимал, отправлял status обновление до 1.

таблица проверок

public function up()
{
    Schema::create('inspections', function (Blueprint $table) {
        $table->increments('id');
        $table->integer('user_id')->unsigned();
        $table->integer('requisition_id')->unsigned();
        $table->string('encouragement_data')->nullable(true);
        $table->text('infraction_data')->nullable(true);
                $table->timestamps();

        $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
    $table->foreign('requisition_id')->references('id')->on('requisitions')->onDelete('cascade');
    });
}

таблица заявок

public function up()
{
    Schema::create('requisitions', function (Blueprint $table) {
        $table->increments('id');
        $table->integer('school_id')->unsigned();
        $table->integer('user_id')->unsigned();
        $table->integer('type');
        $table->boolean('status')->default(0);
        $table->string('date');
        $table->boolean('approved');
                $table->timestamps();

        $table->foreign('school_id')->references('id')->on('schools')->onDelete('cascade');
        $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
    });
}

InspectionController.php

public function store(Request $request)
{
    $inspection = new Inspection();
    $inspection->infraction_data = $request->infractions;
    $inspection->encouragement_data = $request->encouragement;
    $inspection->user_id = auth()->user()->id;
    $inspection->requisition_id = 1;
    $inspection->update()->requisitions->staus = 1;
    $inspection->save();
    return redirect()->route('inspection-results.index');
}

Inspection.php

public function requisitions()
{
    $this->belongsTo(Requisition::class);
}

1 Ответ

0 голосов
/ 02 октября 2018

В blade.php

установите следующий сегмент кода для кнопки отправки пользователя

@foreach($tasks as $task)
<a href="/status/{{$task_>id}}" class="btn-btn-primary">submit</a>
@endforeach

В web.php

Route::get('/status/{id},'InspectionController@updateStatus');

В InspectionController.php

Создать следующий метод.

public function updateStatus($id){
$task=requisitionsModelName::find($id);
$task->status=1;
$task->save();
return redirect()->back();
}

В таблице заявок

$data=requisitionsModelName::all();
return view('relevantViewname')->with('tasks',$data);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...