Title
Voluptas enim fugit sed nisi consequuntur voluptatem magni quis.
Author
Amari Shields
Public
yes
Body
Ipsa reprehenderit ea perspiciatis ut praesentium. Culpa provident iure soluta vel. Assumenda repellendus saepe at suscipit minus vitae omnis. Sequi qui aliquam et soluta.

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?