我有数据库
site_id | site_name | site_status
1 | site A | 1
2 | site B | 1
3 | site C | 1
站点控制器
public function show(site $site,$id)
{
$site = site::where('site_id',$id)->first();
// return $id;
return view('master.site.show',compact('site'));
}
使用者php(模型)
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Site extends Model
{
protected $table = "site";
protected $primaryKey = 'site_id';
protected $fillable = ['site_name','site_status','created_by','created_date'];
}
路线。
Route::get('/site_show/{id}', 'SiteController@show')->name('site_show');
看法
<a class="btn btn-info" href="{{ route('site_show',['id'=>$site->site_id]) }}"><i class="fas fa-eye"></i> Show</a>
请帮助我一步一步,当我点击显示按钮在show.blade, url将显示http://localhost/myproject/public/site_show/asndlah9q8yasa不http://localhost/myproject/public/site_show/2
您好,您可以使用encrypt()
和decrypt()
Laravel助手函数。
你的控制器
public function show(site $site,$id)
{
$site = site::where('site_id',decrypt($id))->first();
// return $id;
return view('master.site.show',compact('site'));
}
你的观点
<a class="btn btn-info" href="{{ route('site_show',['id'=>encrypt($site->site_id)]) }}"><i class="fas fa-eye"></i> Show</a>