Laravel | Cookbook
Inhaltsverzeichnis
Tutorials, Links
- https://kinsta.com/blog/laravel-tutorial/#6-best-free-laravel-tutorial-sites
- https://laravel-news.com/
- https://laravel-news.com/learning-laravel-in-2021
- https://laravel.com/docs/8.x
- https://www.tutsmake.com/category/laravel-tutorial/
- https://www.tutsmake.com/laravel-interview-questions-answers-for-1235-year-experience/
- https://www.larashout.com/
- https://learn2torials.com/category/laravel
- https://eloquentbyexample.com/
- https://laravel.com/docs/8.x/eloquent#introduction
Erste Schritte
Erstellen einer ersten Anwendung
laravel new app --jet cd app
Datenbankkonfiguraton anpassen in der Datei .env
DB_HOST=
Datenbank erstellen
composer update php artisan key:generate php artisan migrate
Livewire Komponenten hinzufügen
php artisan vendor:publish --tag=jetstream-views
Frontend erstellen
npm install npm run dev php artisan serve
Upgrade Composer
composer self-update --2
Datenbanken
https://laravelarticle.com/laravel-ajax-datatable-crud
Controller
Visitor Count
https://postsrc.com/posts/how-to-implement-visitor-views-or-visitor-counter-in-laravel-application
Links
- https://laravel-news.com/
- https://laravel-news.com/learning-laravel-in-2021
- https://laravel.com/docs/8.x
- https://www.tutsmake.com/category/laravel-tutorial/
- https://www.tutsmake.com/laravel-interview-questions-answers-for-1235-year-experience/
- https://www.larashout.com/
- https://learn2torials.com/category/laravel
- https://eloquentbyexample.com/
- https://laravel.com/docs/8.x/eloquent#introduction
Routing
Alle Routen anzeigen
php artisan route:list
Routen dynamisch erzeugen
composer require illuminate/support
use Illuminate\Support\Facades\File; function generateRoutes($basePath, $baseNamespace = 'Pages', $routePrefix = '/') { $files = File::allFiles($basePath); foreach ($files as $file) { $relativePath = str_replace([$basePath, '.vue'], '', $file->getRelativePathname()); $routeName = str_replace(DIRECTORY_SEPARATOR, '.', $relativePath); $routeUri = str_replace(DIRECTORY_SEPARATOR, '/', $relativePath); // Example: if file is `resources/js/Pages/Examples/layout-discord.vue` // $routeName = 'Examples.layout-discord'; // $routeUri = 'examples/layout-discord' Route::get($routePrefix . $routeUri, function () use ($relativePath, $baseNamespace) { return Inertia::render($baseNamespace . str_replace('/', '\\', $relativePath)); })->name($routeName); } } generateRoutes(resource_path('js/Pages'));
Mail / SMTP
Lokaler Mailserver für SMTP Testing
MailHog: Web and API based SMTP testing
UI
Versionen anzeigen
In dem entsprechenden Blade-View:
<p class="mb-2"> Laravel Version: <span class="font-mono">{{ $page.props.laravelVersion }}</span><br> PHP Version: <span class="font-mono">{{ $page.props.phpVersion }}</span> </p></p>
Option A — Routing anpasssen
routes/web.php
use Illuminate\Foundation\Application; use Illuminate\Support\Facades\Route; use Inertia\Inertia; Route::get('/', function () { return Inertia::render('Welcome', [ 'laravelVersion' => Application::VERSION, // or app()->version() 'phpVersion' => PHP_VERSION, ]); });
Option B — Global jeder Seite übergeben
app/Http/Middleware/HandleInertiaRequests.php
use Illuminate\Foundation\Application; use Inertia\Middleware; use Illuminate\Http\Request; class HandleInertiaRequests extends Middleware { // ... public function share(Request $request): array { return array_merge(parent::share($request), [ ... vorherige Rückgabewerte beibehalten 'laravelVersion' => Application::VERSION, // or app()->version() 'phpVersion' => PHP_VERSION, ]); } }
Leave a Reply