Π― ΠΏΠΎΠΏΡΡΠ°Π»ΡΡ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ composer require yajra/laravel-datatables-oracle
ΠΈ ΡΠ²ΠΈΠ΄Π΅Π» ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
Using version ^9.7 for yajra/laravel-datatables-oracle
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> <strong i="9">@php</strong> artisan package:discover --ansi
ErrorException : Invalid argument supplied for foreach()
at /var/www/atd-inspector/vendor/yajra/laravel-datatables-oracle/src/DataTablesServiceProvider.php:45
41| */
42| public function boot()
43| {
44| $engines = config('datatables.engines');
> 45| foreach ($engines as $engine => $class) {
46| $engine = Str::camel($engine);
47|
48| if (! method_exists(DataTables::class, $engine) && ! DataTables::hasMacro($engine)) {
49| DataTables::macro($engine, function () use ($class) {
Exception trace:
1 Illuminate\Foundation\Bootstrap\HandleExceptions::handleError("Invalid argument supplied for foreach()", "/var/www/atd-inspector/vendor/yajra/laravel-datatables-oracle/src/DataTablesServiceProvider.php", [])
/var/www/atd-inspector/vendor/yajra/laravel-datatables-oracle/src/DataTablesServiceProvider.php:45
2 Yajra\DataTables\DataTablesServiceProvider::boot()
/var/www/atd-inspector/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:32
Please use the argument -v to see more details.
Script <strong i="10">@php</strong> artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1
Installation failed, reverting ./composer.json to its original content.
ΠΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ? ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΊΠΎΠ½ΡΠΈΠ³, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Π΅Π³ΠΎ.
ΠΠ½Π΅ ΡΠΎ ΠΆΠ΅. Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ laravel Ρ ΡΠ΅ΠΆΠΈΠΌΠ°ΠΌΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ (Π½Π΅ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅) Π½Π° localhost.
ΠΡΠ±ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅?
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ.
Π― ΡΠ΅ΡΠΈΠ» ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ vendor / yajra / laravel-datatables-oracle / src / DataTablesServiceProvider.php
ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ $ Engine Π²:
$engines = [
'eloquent' => Yajra\DataTables\Engines\EloquentEngine::class,
'query' => Yajra\DataTables\Engines\QueryBuilderEngine::class,
'collection' => Yajra\DataTables\Engines\CollectionEngine::class,
// add your custom engine
];
Π Π·Π°ΡΠ΅ΠΌ ΡΠ½ΠΎΠ²Π° ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ yajra / laravel-datatables-oracle: "~ 9.0"
ΠΠ°ΡΠ΅ΠΌ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² confi / app.php Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ ΠΎΠ± ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊ php artisan
Π ΡΠ°ΠΊΠΆΠ΅
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ php artisan
Π ΡΠ°Π±ΠΎΡΠ°Π΅Ρ !!
ΠΠΌΠ΅Ρ ΡΡ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ?
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Laravel. ΠΡΠ»ΠΈ Π²Ρ ΡΠΊΠΎΠΏΠΈΡΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ datatables.php Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π² Laravel, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ php artisan config: ΠΎΡΠΈΡΡΠΈΡΠ΅ Π΅Π³ΠΎ, ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Π΅ΠΉ.
@yajra Π΅ΡΡΡ Π»ΠΈ ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ?
ΠΠ°Π΄Π΅ΡΠ»ΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΏΠ°ΡΡ Π½Π΅Π΄Π΅Π»Ρ. Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ /vendor
ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ - ΡΡΠΎ ΠΎΠ±Ρ
ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΡΡ, Π½ΠΎ Π½Π΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΡΠΎΠ±ΠΎΠ²Π°Π» Π½ΠΎΠ²ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ Laravel ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΎΡΠΎΡΠΎ.
> laravel new 2202
........
> composer require yajra/laravel-datatables-oracle
Using version ^9.7 for yajra/laravel-datatables-oracle
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
- Installing yajra/laravel-datatables-oracle (v9.7.1): Loading from cache
yajra/laravel-datatables-oracle suggests installing yajra/laravel-datatables-buttons (Plugin for server-side exporting of dataTables.)
yajra/laravel-datatables-oracle suggests installing yajra/laravel-datatables-html (Plugin for server-side HTML builder of dataTables.)
yajra/laravel-datatables-oracle suggests installing yajra/laravel-datatables-fractal (Plugin for server-side response using Fractal.)
yajra/laravel-datatables-oracle suggests installing yajra/laravel-datatables-editor (Plugin to use DataTables Editor (requires a license).)
Writing lock file
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> <strong i="6">@php</strong> artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fideloper/proxy
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Discovered Package: yajra/laravel-datatables-oracle
Package manifest generated successfully.
ΠΠΎΠΆΠ΅Ρ Π»ΠΈ ΠΊΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π³ΠΎΠ², ΡΡΠΎΠ±Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΡΡΠΎ? Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ!
Π’ΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π» Π½ΠΎΠ²ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ, ΠΈ Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
Π―Π²Π½ΠΎΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ config('datatables.engines')
ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρ, ΠΏΠΎΡ
ΠΎΠΆΠ΅, ΡΠ΅ΡΠ°Π΅Ρ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ null
ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π² foreach
.
- $engines = config('datatables.engines');
+ $engines = (array) config('datatables.engines');
Π’Π°ΠΊΠ°Ρ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π΄Π΅ΡΡ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅ΠΌΠ΅ΡΠ»Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ»ΠΈ ΡΡΠΎ-ΡΠΎ Π΅ΡΠ΅, ΠΈ Π²Π΅ΡΡ ΡΠ°ΠΉΡ ΡΠ°Π·Π±ΠΈΠ»ΡΡ Ρ ΡΡΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΡΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΎΠΌΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π² @mtvbrianking , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΡΡΠΎΠΌΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ.
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎΠ± ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΅Π΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ.
@filliph ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΌΠ½Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΎ, ΡΡΠΎ Ρ Π½Π΅ ΠΌΠΎΠ³Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ. PR ΠΎΡ
ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ Π±ΡΠ΄Π΅Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΏΠΎΠ΄ΡΠΏΠΎΡΡΠ΅ΠΌ Π² ΡΡΠΎΠΌ.
@mtvbrianking, Π½Π΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π²Ρ
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Laravel. ΠΡΠ»ΠΈ Π²Ρ ΡΠΊΠΎΠΏΠΈΡΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ datatables.php Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π² Laravel, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ php artisan config: ΠΎΡΠΈΡΡΠΈΡΠ΅ Π΅Π³ΠΎ, ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Π΅ΠΉ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ^ _ ^
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Laravel. ΠΡΠ»ΠΈ Π²Ρ ΡΠΊΠΎΠΏΠΈΡΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ datatables.php Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π² Laravel, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ php artisan config: ΠΎΡΠΈΡΡΠΈΡΠ΅ Π΅Π³ΠΎ, ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Π΅ΠΉ.