Bladeren bron

Route-Model Binding

tyson 1 jaar geleden
bovenliggende
commit
d7ef2916d4

+ 4 - 0
app/Http/Controllers/IdeaController.php

@@ -6,6 +6,10 @@ use Illuminate\Http\Request;
 use App\Models\Idea;
 class IdeaController extends Controller
 {
+    public function show(Idea $idea)
+    {
+        return view('ideas.show',compact('idea'));
+    }
     public function store()
     {
         request()->validate(

+ 96 - 0
resources/views/ideas/show.blade.php

@@ -0,0 +1,96 @@
+@extends('shared.layout.layout')
+@section('content')
+    <div class="container py-4">
+        <div class="row">
+            <div class="col-3">
+                <div class="card overflow-hidden">
+                    <div class="card-body pt-3">
+                        <ul class="nav nav-link-secondary flex-column fw-bold gap-2">
+                            <li class="nav-item">
+                                <a class="nav-link text-dark" href="#">
+                                    <span>Home</span></a>
+                            </li>
+                            <li class="nav-item">
+                                <a class="nav-link" href="#">
+                                    <span>Explore</span></a>
+                            </li>
+                            <li class="nav-item">
+                                <a class="nav-link" href="#">
+                                    <span>Feed</span></a>
+                            </li>
+                            <li class="nav-item">
+                                <a class="nav-link" href="#">
+                                    <span>Terms</span></a>
+                            </li>
+                            <li class="nav-item">
+                                <a class="nav-link" href="#">
+                                    <span>Support</span></a>
+                            </li>
+                            <li class="nav-item">
+                                <a class="nav-link" href="#">
+                                    <span>Settings</span></a>
+                            </li>
+                        </ul>
+                    </div>
+                    <div class="card-footer text-center py-2">
+                        <a class="btn btn-link btn-sm" href="#">View Profile </a>
+                    </div>
+                </div>
+            </div>
+            <div class="col-6">
+                    <div class="mt-3">
+                        @include('shared.idea-card')
+                    </div>
+
+            </div>
+            <div class="col-3">
+                <div class="card">
+                    <div class="card-header pb-0 border-0">
+                        <h5 class="">Search</h5>
+                    </div>
+                    <div class="card-body">
+                        <input placeholder="...
+                        " class="form-control w-100" type="text"
+                               id="search">
+                        <button class="btn btn-dark mt-2"> Search</button>
+                    </div>
+                </div>
+                <div class="card mt-3">
+                    <div class="card-header pb-0 border-0">
+                        <h5 class="">Who to follow</h5>
+                    </div>
+                    <div class="card-body">
+                        <div class="hstack gap-2 mb-3">
+                            <div class="avatar">
+                                <a href="#!"><img class="avatar-img rounded-circle"
+                                                  src="https://api.dicebear.com/6.x/fun-emoji/svg?seed=Mario" alt=""></a>
+                            </div>
+                            <div class="overflow-hidden">
+                                <a class="h6 mb-0" href="#!">Mario Brother</a>
+                                <p class="mb-0 small text-truncate">@Mario</p>
+                            </div>
+                            <a class="btn btn-primary-soft rounded-circle icon-md ms-auto" href="#"><i
+                                    class="fa-solid fa-plus"> </i></a>
+                        </div>
+                        <div class="hstack gap-2 mb-3">
+                            <div class="avatar">
+                                <a href="#!"><img class="avatar-img rounded-circle"
+                                                  src="https://api.dicebear.com/6.x/fun-emoji/svg?seed=Mario" alt=""></a>
+                            </div>
+                            <div class="overflow-hidden">
+                                <a class="h6 mb-0" href="#!">Mario Brother</a>
+                                <p class="mb-0 small text-truncate">@Mario</p>
+                            </div>
+                            <a class="btn btn-primary-soft rounded-circle icon-md ms-auto" href="#"><i
+                                    class="fa-solid fa-plus"> </i></a>
+                        </div>
+                        <div class="d-grid mt-3">
+                            <a class="btn btn-sm btn-primary-soft" href="#!">Show More</a>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+@endsection
+

+ 1 - 0
resources/views/shared/idea-card.blade.php

@@ -16,6 +16,7 @@
                     @method('DELETE')
                     <button class="btn btn-danger btn-sm">X</button>
                 </form>
+                <a href="{{route('ideas.show',$idea->id)}}">View</a>
             </div>
         </div>
     </div>

+ 2 - 0
routes/web.php

@@ -19,6 +19,8 @@ Route::get('/', [DashboardController::class, 'index'])->name('ideas.index');
 
 Route::post('/ideas', [\App\Http\Controllers\IdeaController::class, 'store'])->name('ideas.store');
 
+Route::get('/ideas/{idea}', [\App\Http\Controllers\IdeaController::class, 'show'])->name('ideas.show');
+
 Route::delete('/ideas/{idea}', [\App\Http\Controllers\IdeaController::class, 'destroy'])->name('ideas.destroy');
 
 Route::get('/terms', function (){