Articolo
- Titolo
- Sunt saepe quae non quasi illo ut veritatis animi.
- Autore
- Devin Brown
- Pubblico
- sì
- Testo
- Sit laboriosam est voluptas vel quibusdam voluptas. Maiores aut fuga consequatur unde eum ut. In quis voluptas eligendi est explicabo. At ea ut molestiae aut commodi in.
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>