Laravel Cheat Sheet

von | Mrz 2, 2020 | Keine Kategorie

Model (Basis)

// Model Definition
class User extends Model {}

// Eloquent Models erstellen
php artisan make:model User

// Eigenen Tabellennamen festlegen
class User extends Model {
   protected $table = 'my_users_table';
}

Model (Erweitert)

Model::create(array('key' => 'value'));

// Entweder neu erstellen oder vorhandenes Model zurückgeben
Model::firstOrCreate(array('key' => 'value'));

// Erstes Model nach Werten suchen oder instanziieren
Model::firstOrNew(array('key' => 'value'));

// Model mit Attributen füllen ($fillable beachten)
Model::fill($attributes);

Model::destroy(1);
Model::all();
Model::find(1); // Model mit ID 1

// Find mit dual primary key
Model::find(array('first', 'last'));

// Model nach ID suchen oder Exception
Model::findOrFail(1);

// Find mit dual primary key oder Exception
Model::findOrFail(array('first', 'last'));

// Where
Model::where('foo', '=', 'bar')->get();
Model::where('foo', '=', 'bar')->first();

// Dynamische Where Attribute
Model::whereFoo('bar')->first();

// Where mit Exception
Model::where('foo', '=', 'bar')->firstOrFail();
Model::where('foo', '=', 'bar')->count();
Model::where('foo', '=', 'bar')->delete();

// Portionierung der Ausgabe
Model::all()->take(10);
Model::all()->skip(10);

// Sortieren (Default: ascendant)
Model::all()->orderBy('column');
Model::all()->orderBy('column','desc');

Logging

// Die Log Funktionalitaet hat alle im RFC 5424 definierten Log Level:
// debug, info, notice, warning, error, critical und alert.
Log::info('info');
Log::info('info',array('context'=>'additional info'));
Log::error('error');
Log::warning('warning');

// monolog instanz
Log::getMonolog();

// neuer Listener
Log::listen(function($level, $message, $context) {});

Query Logging

// logging aktivieren
DB::enableQueryLog();
// Einen array an ausgeführten Queries erhalten
DB::getQueryLog();

composer

composer create-project laravel/laravel folder_name
composer install
composer update
composer dump-autoload [--optimize]
composer self-update
composer require [options] [--] [vender/packages]...

 

Routing

Route::get('product', function(){});
Route::get('product', 'ProductController@function');
Route::controller('product', 'ProductController');
Route::apiResource('products', 'ProductController');