В URL я хочу показать slug
вместо ID
. Я пробовал это:
{{ url('/produits/'.$category->slug) }}
но это не возвращает никаких результатов. Что я могу сделать?
Заранее спасибо!
web.php :
Route::get('/produits/{id?}', 'Controller@produits');
Контроллер
public function produits($id = null){
if($id){
$produits = Post::orderBy('created_at', 'desc')
->whereStatus('PUBLISHED')
->whereCategoryId($id)
->take(10)->get();
}else {
$produits = Post::orderBy('created_at', 'desc')
->whereStatus('PUBLISHED')
->take(10)->get();
}
$categories = Category::all();
return view('Mywebsite.produits', ['id' => $id, 'mesProduits' => $produits, 'mesCategories' => $categories]);
}
products.php
<nav id="nav-top">
<ul>
<li> <a href="{{ url('/produits') }}">Tous les produits</a></li>
@foreach ($mesCategories as $category)
<li><a href="{{ url('/produits/'.$category->id) }}">{{ $category->name }} -({{ $category->posts->count() }})</a></li>
@endforeach
</ul>
</nav>
<div class="lx-products-list lx-bloc-content">
<div class="lx-products-items">
@foreach ($mesProduits as $produit)
<div class="lx-g4 lx-g5-to-g2">
<div class="lx-products-item">
<a href="Produit/39.html">
<div class="lx-products-item-img">
<a href="{{ url('/produit/'.$produit->slug) }}">
<img src="{{ asset('/storage/'.$produit->image) }}" />
</a>
</div>
<h4>{{ $produit->category->name }}</h4>
<div class="lx-products-item-detail">
<h2 class="haha2"><i style="color:#fdd043;" class="fas fa-shopping-cart"></i><a href="{{ url('/produit/'.$produit->slug) }}">{{ str_limit($produit->title, 30) }}</a></h2>
<p class="para">
<ins>
{{ $produit->prix }} درهم
</ins>
</p>
</div>
</a>
</div>
</div>
@endforeach
</div>
</div>
<div class="lx-clear-fix"></div>
</br></br></br>
</div>
</div>