Laravel-datatables: ๋‹ค๋ฅธ ๊ธฐ๋ณธ ๋งค๊ฐœ ๋ณ€์ˆ˜์™€ ํ•จ๊ป˜ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•

์— ๋งŒ๋“  2018๋…„ 04์›” 09์ผ  ยท  7์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: yajra/laravel-datatables

๋ฌธ์ œ ์š”์•ฝ ๋˜๋Š” ๊ธฐ๋Šฅ ์š”์ฒญ

์•ˆ๋…•ํ•˜์„ธ์š”,

ajax ์š”์ฒญ์— ๋Œ€ํ•ด ์ž์ฒด ์ „๋‹ฌํ•˜๋Š” ๋‹ค๋ฅธ ๊ธฐ๋ณธ ๋งค๊ฐœ ๋ณ€์ˆ˜์™€ ํ•จ๊ป˜ ํ•˜๋‚˜์˜ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
ํ…Œ์ด๋ธ”์— ํ‘œ์‹œ๋˜๋Š” ๋ฐ์ดํ„ฐ / ํ•„๋“œ์˜ ์ผ๋ถ€๊ฐ€ ์•„๋‹Œ ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
๊ธฐ๋ณธ์ ์œผ๋กœ ํ˜„์žฌ ํ‘œ์‹œ๋˜๋Š” ์—ด์˜ ์ผ๋ถ€๊ฐ€ ์•„๋‹Œ ํ•˜๋‚˜์˜ ํ•„ํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

question

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐ์ดํ„ฐ ํ…Œ์ด๋ธ”๊ณผ ํ•จ๊ป˜ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

->with([
   "cities" => app(\App\Http\Controllers\HelperController::class)->cityListing(),
  "leadCounters" =>  $this->leadCounters
])
->make(true);

๊ทธ๋Ÿฌ๋‚˜ Yajra Datatable์˜ ์‘๋‹ต์—์„œ ์ด๋Ÿฌํ•œ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์–ด๋–ป๊ฒŒ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  7 ๋Œ“๊ธ€

์ถ•์†Œ ๋œ ajax์—์„œ๋Š” ์š”์ฒญ์‹œ ๊ธฐ๋ณธ์ ์œผ๋กœ ํฌํ•จ๋  ๋งค๊ฐœ ๋ณ€์ˆ˜ ๋ฐฐ์—ด์„ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ์ด๊ฒƒ์ด ๋‹น์‹ ์—๊ฒŒ ํ•„์š”ํ•œ ๊ฒƒ์ผ๊นŒ ์š”? ref๋Š” https://yajrabox.com/docs/laravel-datatables/master/html-builder-minified-ajax ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

@jatinbphp ๋‹น์‹ ์€ ์ด๊ฒƒ์ฒ˜๋Ÿผ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ?
๊ณต์šฉ ํ•จ์ˆ˜ userSkpDataTable ($ pes)
{
$ skp = skp :: isAktif ($ pes, 1);
return Datatables :: of ($ skp)
-> addColumn ( 'action', function ($ user) use ($ pes) {
return ' link with 2 paramter ';
})-> make (true);
}

HTML ๋นŒ๋”๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์ž์ฒด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

์–ด์จŒ๋“ ,์ด js๋ฅผ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.

```js
$ ( '# ..'). DataTable ({
ajax : {
URL : '',
๋ฐ์ดํ„ฐ : function (data) {data.key = value; }
},
...
})

์•ˆ๋…•ํ•˜์„ธ์š” Yajra, Yajra๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ•˜๋ ค๊ณ ํ•˜๋ฏ€๋กœ ์‹œ๊ฐ„ ๋ฒ”์œ„ ํ•„ํ„ฐ์—์„œ ๋งŒ๋“  ์ด๋Ÿ‰๊ณผ ๊ฐ™์€ ๊ฒƒ์„ ์–ป์Šต๋‹ˆ๋‹ค. ๋‚ด ์ปจํŠธ๋กค๋Ÿฌ์˜ ์•„๋ž˜ ์Šคํฌ๋ฆฐ ์ƒท์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
์ œ ์ƒ๊ฐ์—๋Š” ์ด๊ฑธ ํ•  ์ˆ˜ ์—†์–ด์š” {{cashMade}}

Errr : ์ •์˜๋˜์ง€ ์•Š์€ ์ƒ์ˆ˜ cashMade ์‚ฌ์šฉ- 'cashMade'๋กœ ๊ฐ€์ •

yaj

@ laurence702 ๋‹น์‹ ์€ ์‘๋‹ต์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด api ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Route::get('user-data', function() {
    $model = App\User::query();

    return DataTables::eloquent($model)
                ->with('posts', 100)
                ->with('comments', 20)
                ->toJson();
});

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐ์ดํ„ฐ ํ…Œ์ด๋ธ”๊ณผ ํ•จ๊ป˜ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

->with([
   "cities" => app(\App\Http\Controllers\HelperController::class)->cityListing(),
  "leadCounters" =>  $this->leadCounters
])
->make(true);

๊ทธ๋Ÿฌ๋‚˜ Yajra Datatable์˜ ์‘๋‹ต์—์„œ ์ด๋Ÿฌํ•œ ์ถ”๊ฐ€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์–ด๋–ป๊ฒŒ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@UmeshKrRana ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ดํ•ฉ๋‹ˆ๋‹ค.

DataTable์˜ ์ดˆ๊ธฐํ™”๋ฅผ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜์‹ญ์‹œ์˜ค.

var table = $('.vehicles-report-table').DataTable({...})

๊ทธ๋Ÿฐ ๋‹ค์Œ drawCallback ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค.

drawCallback: function(settings) { console.log(table.ajax.json()) }

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
5 / 5 - 1 ๋“ฑ๊ธ‰