Articolo
- Titolo
- Numquam maxime dolore id aut.
- Autore
- Hilma Deckow
- Pubblico
- sì
- Testo
- Cupiditate possimus earum ut ex omnis fuga vitae. Aperiam rerum eos labore corrupti aliquam. Nemo repellendus ipsum id quos nihil voluptatem aliquid. Distinctio ut est rerum magni tempore iusto unde.
struttura del modulo
demo-module/
├─ Livewire/
│ ├─ Home.php
│ ├─ ArticlesTable.php
│ ├─ ArticlesView.php
│ └─ ArticlesEdit.php
├─ Views/
│ ├─ home.blade.php
│ ├─ articles_table.blade.php
│ ├─ articles_view.blade.php
│ ├─ articles_edit.blade.php
│ ├─ menu.blade.php
│ └─ frontend_menu.blade.php
├─ Models/ Article.php, Author.php
├─ Database/ Migrations/, Seeders/
├─ config.php layout, menu entry
├─ routes.php
└─ DemoModuleServiceProvider.php
route
routes.php
Route::get('demo/articles/view/{article:id}', ArticlesView::class)
->middleware(['web'])
->name('demo.articles.view')
->crumbs(fn ($crumbs, $article) => $crumbs->parent('demo.articles')->push(__('View Article'), route_lang('demo.articles.view', $article)));
componente
Livewire/ArticlesView.php
<?php
namespace App\Modules\Demo\Livewire;
use App\Modules\Demo\Models\Article;
use Livewire\Component;
class ArticlesView extends Component
{
public Article $article;
public function mount(Article $article): void
{
$this->article = $article;
}
public function render()
{
return view('demo::articles_view')->layout('layout::admin');
}
}
view
Views/articles_view.blade.php
<x-rpd::card>
<x-rpd::view title="Article">
<x-slot name="buttons">
<x-rpd::button route="demo.articles" color="outline-primary" label="List" />
<x-rpd::button :route="['demo.articles.edit', $article->id]" color="outline-primary" label="Edit" />
</x-slot>
<dl class="row">
<dt class="col-3">{{ __('Title') }}</dt>
<dd class="col-9">{{ $article->title }}</dd>
<dt class="col-3">{{ __('Author') }}</dt>
<dd class="col-9">{{ $article->author?->firstname }} {{ $article->author?->lastname }}</dd>
<dt class="col-3">{{ __('Public') }}</dt>
<dd class="col-9">{{ $article->public ? __('yes') : __('no') }}</dd>
<dt class="col-3">{{ __('Body') }}</dt>
<dd class="col-9">{!! $article->body !!}</dd>
</dl>
</x-rpd::view>
</x-rpd::card>