laravel - 在 url laravel 中显示名称而不是 id
问题描述
我只想问我如何显示公司名称而不是它的ID。当前显示为 localhost:8000/1/Belen'sChoice,所需输出为 localhost:8000/Belen'sChoice。我可以得到这个名字,但它说“试图找到 id”。
控制器
public function show($id)
{
$categories = Category::all();
$businesses = Business::find($id);
if (Auth::check()) {
$userId = Auth::user()->id;
$users = User::where('id', $userId)->get();
$posts = Post::where('business_id', $businesses->id)->get()->sortByDesc('created_at');
$supporters = Supporter::where('user_id', $userId)->get();
$photos = Image::where('business_id', $businesses->id)->get();
$albums = Album::where('business_id', $businesses->id)->get();
$count = 0;
if ($businesses->user_id != Auth::user()->id) {
$businesses->views = $businesses->views + 1;
$businesses->save();
} else {
$businesses->views = $businesses->views;
}
return view('businesses.index', [
'categories' => $categories,
'businesses' => $businesses,
'users' => $users,
'posts' => $posts,
'supporters' => $supporters,
'count' => $count,
'images' => $photos,
'albums' => $albums,
]);
} else {
return view('businesses.index', [
'categories' => $categories,
'businesses' => $businesses,
]);
}
}
刀
<a class="text-center" href='{{ url("/businessprofile/".$business->id."/".str_replace(" ", "" ,$business->name)) }}'><img class="bprof-img" src='{{ asset("storage/$business->logo") }}'>{{ $business->name }}</a>
网页.php
Route::get('/businessprofile/{id?}/{name}', 'BusinessController@show');
TIA
解决方案
在您的业务迁移中占据一栏
$table->string('slug')->unique();
并以这种方式将其保存在您的控制器中
//use this at the bottom of your controller
use Illuminate\Support\Str;
$business = new Business;
$business->slug = Str::slug($request->name) // whatever you request dring //creating a business row
//and after that save it
$business->save();
然后在您的控制器中使用 slug 找到该行
public function show($slug)
{
$business = Business::where('slug',$slug)->first();
//还有你的其他操作 }
href='{{ url("/".str_replace(" ", "" ,$business->slug))}}' 然后在您的网络中
Route::get('/{slug}', 'BusinessController@show');
推荐阅读
- c# - Asp.net core 2.0 错误 -13 EACCES 权限被拒绝
- django - 引导按钮菜单响应在 Django 项目中不起作用
- javascript - 使用 css 和 javascript 淡出元素在页面中留下空白空间
- json - ssis 输出 json 文件添加额外的 crlf
- c - 在字符串中的每个逗号后添加双引号
- php - 当需要服务器响应时,消除确认对话框的等待时间
- javascript - How to search data in a table in HTML
- regex - Rust regex pattern - unrecognized escape pattern
- android - Ionic:使用 cordova-plugin-inappbrowser 拦截 PDF URL
- javascript - 解析 Javascript 变量