【问题标题】:how to pass value to two views from a function in laravel?如何从laravel中的函数将值传递给两个视图?
【发布时间】:2021-06-24 17:31:40
【问题描述】:

我有一个问题,我需要将一个单独的学生 ID 传递给 ResultController 和 AttendenceController 以获取一个单独的学生数据,如果该值仅起作用,但我想将该值传递给两个不同的控制器和两个不同的视图(我正在使用引导导航选项卡),我需要索引页面应该将学生的学生 id 传递给结果和出勤控制器,并且选项卡应该显示单个学生的出勤率和结果

 public function getStudent($id)
{
  
  
   $bens = Attendence::where('student_id',$id)->paginate(6);
 return view('atten.index',compact('bens','id'))->with('i', (request()->input('page', 1) - 1) * 5);
}

这是我们需要从索引页面传递的路由函数

Route::get('/atten/getStudent/{id}', 
    ['uses' => 'AttendenceController@getStudent', 'as' => 'getStudent']);

单击它应该将 id 传递给结果控制器和出席控制器如何做到这一点,我不喜欢在 AppServiceProvider 中使用 boot() 方法是否可以用另一种方法解决问题。谢谢

【问题讨论】:

  • 你使用的是哪个 Laravel 版本?
  • 谢谢@FluxCoder 我正在使用laravel-8
  • 听起来不可能,您只能在路由中处理一个控制器和方法。保存在会话中并在另一个控制器中使用它
  • @brombeer 如果我将数据保存到会话中,它只能在一个控制器内部访问,不能使用另一个控制器,你有其他解决方案吗?谢谢

标签: laravel eloquent laravel-routing


【解决方案1】:

首先我在中间件中对路由进行分组,然后在获取学生 ID 时使用 Session()->put 方法,然后我可以通过 session()->get(''); 在中间件中的组中使用任何路由;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-10
    • 1970-01-01
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多