在我的laravel应用程序中,当我将鼠标悬停在链接上时,我的目的是显示计划ID。基本上从数据库中获取计划表的ID。我收到错误:
Undefined variable: plan
控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Plan;
class PlanController extends Controller
{
public function getPlan(Request $request, $id){
$plan = Plan::find($id);
return redirect()->route('index');
}
}
路线:
Route::get('/plan_id/{id}', [
'uses' => 'PlanController@getPlan',
'as' => 'get-plan'
]);
使用链接查看:
<a href="{{route('get-plan', ['id' => $plan->id])}}" type="submit" id="basic" class="btn btn-primary btn-lg btn-block">Sign up with Basic </a>
答案 0 :(得分:1)
您应该返回构建链接的视图,而不是使用重定向:
return view('view', compact('plan'));
正如我在您的其他问题中告诉您的那样,如果您使用重定向,则应使用->with('plan', $plan);
将数据刷新到会话中。
答案 1 :(得分:0)
在该代码中,变量$ plan是函数的本地变量。它没有外部范围。 您可以将其声明为全局
global $plan;
或在课堂上使用公共变量:
$this->plan