syamsoul / laravel-datatable-ssp

DataTable SSP (PHP) for Laravel
https://info.souldoit.com/projects/laravel-datatable-ssp
MIT License
6 stars 6 forks source link

Unresolvable dependency resolving [Parameter #0 [ <required> $model ]] in class SoulDoit\DataTable\SSP #9

Closed valdianaugust closed 9 months ago

valdianaugust commented 9 months ago

Hi,

First Time using this packages i've follow how to use this packages trough this site https://info.souldoit.com/projects/laravel-datatable-ssp/v3/introduction but it always turn out "required $model", i dunno what i missed i'm sure have follow all the documentation.

Here's my code

$ssp = new SSP(); $ssp->setColumns([[ 'db'=>'id'],[ 'db'=>'nama_produk'],[ 'db'=>'price'], ]); $ssp->setQuery(function ($selected_columns) { return App\Models\Items::select($selected_columns); }); return $ssp->response()->json();

and this my view

const samaTabel = $('#produk-sama').DataTable({ "processing": true, "serverSide": true, ajax: { url: "{{ route('adminProduk.items_toko') }}", }, });

Thanks.

syamsoul commented 9 months ago

SOLUTION #1

public function itemsToko()
{
    $ssp = new SSP();

    $ssp->frontend()->setFramework('datatablejs'); // <--- ADD THIS

    $ssp->setColumns([
        [ 'db'=>'id'],
        [ 'db'=>'nama_produk'],
        [ 'db'=>'price'], 
    ]);
    $ssp->setQuery(function ($selected_columns) {
        return App\Models\Items::select($selected_columns);  
    });

    return $ssp->response()->json();
}

.

SOLUTION #2 OR follow example here (https://info.souldoit.com/projects/laravel-datatable-ssp/v3/how-to-use/frontend#datatables-jquery)

valdianaugust commented 9 months ago

Thanks for the answer, but it seems the "Required $model" is still exist.

and i already edit my config/sd-datatable-ssp.php return [ 'subquery' => [ 'alias_has_prefix' => false, ], 'leftjoin' => [ 'alias_has_prefix' => false, ], 'search' => [ 'merge_params_binding' => true, ], 'frontend_framework' => 'datatablejs', // NOTE: available options = datatablejs, vuetify, others 'export_to_csv' => [ 'is_cache_lock_enable' => false, 'is_cache_lock_based_on_auth' => true, ], 'default_modifier_timezone' => 'UTC', // NOTE: used in DateTimeModifier ];

I'm Sorry, I use Laravel 8.83.27, i saw someone commented at StackOverFlow it can be use with Laravel 8 Do you think that happen because i use Laravel 8?

Thanks

syamsoul commented 9 months ago

Thanks for the answer, but it seems the "Required $model" is still exist.

and i already edit my config/sd-datatable-ssp.php return [ 'subquery' => [ 'alias_has_prefix' => false, ], 'leftjoin' => [ 'alias_has_prefix' => false, ], 'search' => [ 'merge_params_binding' => true, ], 'frontend_framework' => 'datatablejs', // NOTE: available options = datatablejs, vuetify, others 'export_to_csv' => [ 'is_cache_lock_enable' => false, 'is_cache_lock_based_on_auth' => true, ], 'default_modifier_timezone' => 'UTC', // NOTE: used in DateTimeModifier ];

I'm Sorry, I use Laravel 8.83.27, i saw someone commented at StackOverFlow it can be use with Laravel 8 Do you think that happen because i use Laravel 8?

Thanks

ya.. minimum requirement is at least Laravel 9 and above

syamsoul commented 9 months ago

I recommended you to upgrade Laravel version to 9 and make sure laravel-datatable-ssp package also is on latest version (3.2.6)

valdianaugust commented 9 months ago

Alright Thank you so much