这是我的刀片文件
<h1>Reports for {{$site_name}} </h1>
这是我的控制人
public function showSpecificSite($site_id, $site_name){
$reports = Report::whereHas('site', function($query) use($site_id) {
$query->where('site_id', $site_id);
})->get(['email_date', 'url', 'recipient']);
$site_name = Site::find(site_name)->get();
return view('newsite', compact('site_id', 'site_name', 'reports'));
}
Routes.php
Route::get('sites/{site_id}',
['as'=>'SpecificSite','uses'=>'ReportController@showSpecificSite']);
我是laravel的新人
我对将数据传递到view.blade有疑问
我的报告运行良好,但我也想从站点表中获取site_name值。您知道如何解决此问题吗?
答案 0 :(得分:0)
按现状,Site::find(site_name)->get();
应该是一个致命错误,因为site_name
没有定义为全局或其他定义。要从数据库获取单个属性,请使用pluck()
方法:
$siteName = Site::where("id", "=", $site_id)->pluck("site_name");
注意:无法使其与::find($site_id)
一起使用,但是可能只是我的模型出现问题。
答案 1 :(得分:0)
改为尝试以下行:
$site_name = Site::find($site_id)->name;
名称是将表名称保存在表中的列