使用Laravel我能够从数据库发布数据,购买全部。但我需要它才能获得与用户登录时具有相同user_id的数据。
当我尝试选择其中一个输出数据或尝试链接时,我收到以下错误*“SQLSTATE [42S22]:未找到列:1054'where子句'中的未知列'id'(SQL: select * from myroutes
where id
= 14 limit 1)“*但我到处都有”myroute_id“,这是数据库中的正确列。
web.php
Route::get('/my-saved-routes', function () {
$myroutes = DB::table('myroutes')->latest()->get();
return view('myroutes.index', compact('myroutes'));
});
Route::get('/my-saved-routes/{myroute_id}', function ($myroute_id) {
$myroute = DB::table('myroutes')->find($myroute_id);
return view('myroutes.show', compact('myroute'));
});
myroutes.index
@foreach ($myroutes as $myroute)
<ul>
<a href="/my-saved-routes/{{ $myroute->myroute_id }}">
<li>{{ $myroute->start }} - {{ $myroute->end }}</li>
</a>
</ul>
@endforeach
myroutes.show
<ul>
<li>{{ $myroute->myroute_id }}</li>
<li>{{ $myroute->start }}</li>
<li>{{ $myroute->end }}</li>
<li>{{ $myroute->waypoints }}</li>
</ul>
数据库
答案 0 :(得分:0)
您的查询将是这样的
$data = DB::table('myroutes')->where('user_id',$yourId)->get();
dd($data);
答案 1 :(得分:0)
find()
始终使用id
列。你必须使用这个:
$myroute = DB::table('myroutes')->where('myroute_id', $myroute_id)->first();