Laraval: как обновить статус на странице со списком данных - PullRequest
0 голосов
/ 14 февраля 2020
  • нужно без refre sh статус страницы списка обновлений записи

Я пробовал с полной страницей refre sh, но я хочу Ajax функцию

С правилами Ларавала

Ответы [ 2 ]

1 голос
/ 14 февраля 2020

Добавить Jquery в нижний колонтитул

Добавить страницу просмотра списка этой функцией

Добавить свои данные

$('#table_user').on('click', '.status_clik', function(){           
 var sid = $(this).attr("sid");
$.ajax({
    type: "POST",
    url: '/pageController/updateStatus',
    data: {id: sid},
    success: function(response) { // Change elements in the DOM },
});
});

На странице контроллера

class PageController {
    public function status(Request $request){
        $id = $request->get('id');
        if($id!=''){
            $geStatus = DB::table('tablename')->where('id', $id)->first();

            $update_data = array('eStatus'=>GET_OPPOSITE_STATUS[$geStatus->eStatus]);
            $update = DB::table('tablename')->where('id', $id)->update($update_data);
            if($update){

                return response()->json(array("status"=>1,"message"=>'Status updated successfully'));

            }else{ return response()->json(array("status"=>0,"message"=>_FAIL_TO_PROCESS)); }
        }else{return response()->json(array("status"=>0,"message"=>_FAIL_TO_PROCESS));}
    }


}
1 голос
/ 14 февраля 2020

Если вы хотите обновить запись с помощью Ajax, вам нужно внедрить Ajax в свой шаблон и запросить метод контроллера, который выполняет изменение.

jQuery пример:

$.ajax({
    type: "POST",
    url: '/pageController/updateStatus',
    data: {id: 15, status: 'example'},
    success: function(response) { // Change elements in the DOM },
});

Это отправит идентификатор страницы и статус в метод контроллера updateStatus. В случае успеха вы можете обновить значения в DOM.

Пример контроллера:

class PageController {
    public function updateStatus(int $id, $status) {
        $page = Page::findOrFail($id);
        $page->status = $status;
        $page->save();

        return $page->status;
    }
}

В контроллере вы ищете указанный идентификатор в модели страницы. Затем вы обновляете статус, сохраняете его и возвращаете новый статус, чтобы вы могли использовать его во внешнем интерфейсе.

...