View Article

Title
Quibusdam tenetur id minima quia id ut praesentium aut.
Author
Amari Shields
Public
yes
Body
Deserunt unde voluptatum voluptate. Dolorem velit nesciunt maxime necessitatibus alias veritatis sed. Est sit quis ut tempore maiores et et mollitia. Facere nihil illo rerum qui eos commodi.

module structure

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)));

component

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>

Support
How can I help you today?