Как отправить переключенные данные, чтобы изменить состояние моего логического значения в MySQL через Ajax? - PullRequest
0 голосов
/ 02 мая 2018

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

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

Вот мой код ajax (мой Dashboard.blade.php)

function reply_click(clicked_id){
    $(function() {
        $('#openButton').on('click', function(data) {
            $.get("test.php", {clicked_id);
        });
    });
}

my DashboardController.php

class DashboardController extends Controller
{   
    public function index() {  
        return view('dashboard');
    }
}

мой файл миграции

public function up()
{
    Schema::create('chaves',function (Blueprint $table){
        $table -> increments('id');
        $table -> string('nome');
        $table -> boolean('alugado');
        $table -> timestamps();
    });
}

мой маршрут

Route::get("dashboard", "DashboardController@index")->name("dashboard")->middleware('auth');

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

1001 * JQuery *

function reply_click(clicked_id){
        $(function() {
            $.ajaxSetup({
               headers: {
                  'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
               }
            });
            $('#openButton').on('click', function(data) {
                $.ajax({
                  type: "PATCH",
                  url: "/dashboard"
                })
                .done(function(data){
                    console.log(data);
                })
                .fail(function(data){
                    console.log('Error:', data);
                });
            });
        });
    }    

Контроллер

use App\Chave; //use this if you have model
use Illuminate\Support\Facades\DB; //use this if you don't have model
class DashboardController extends Controller
{   
    public function index() { 
        $dashboard = Chave::first(); //use this if you have model
        $dashboard = DB::table('chaves')->first();
        $dashboard->alugado = 1;
        $dashboard->save();
        return view('dashboard');
    }
}

Маршрутизатор

Route::patch("dashboard", "DashboardController@index")->name("dashboard")->middleware('auth');

Я думаю, что вы должны использовать метод Patch, а не использовать Get в вашем маршрутизаторе .. потому что в этом случае вы пытаетесь выполнить обновление, но не обновлять все ..

Метод Put используется для обновления частичного ресурса

0 голосов
/ 02 мая 2018
 $(document).on('click', '.update', function() {
            var user_id = $(this).attr("id");
              function () {
                    $.ajax({
                        url: "{!! url('your_url' ) !!}" + "/" +id,
                        method: "POST",
                        data: {id: id, "_token": "{{ csrf_token() }}", _method: 'PATCH'},
                        success: function (data) {

                        }
                    });

                },
                function () {
                    return false;
                });
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...