如何在laravel 5中的同一控制器中将数据/变量从一种方法发送到另一种方法


How to send data/variable from one method to another in the same controller in laravel 5?

我在Laravel的同一个控制器中有两个函数/方法,如下所示。。

<?php namespace App'Http'Controllers;
use App'Http'Requests;
//use App'Http'Requests'CreatRole;
use App'Http'Controllers'Controller;
use Input;
use Redirect;
use Illuminate'Http'Request;
use App'UserRole;
class UserController extends Controller {
    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return Response
     */
    public function role()
    {
        return view('user.role');
    }
    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return Response
     */
    public function roleProcess(Requests'CreatRole $request)
    {
            $input = Input::all();
            $role = new UserRole;
            $role->role_name = Input::get('role-name');
            $role->role_number = Input::get('role-number');
            $role->save();
            //redirect to add page;
            return Redirect::to('/home/role/add')->with('message','Role is added');
    }

}

My routes.php的路由为

Route::get('/home/role/add','UserController@role');

我想做的是添加和列出角色可以在同一个视图中完成,即在同一网页上。我想在添加角色时显示成功消息。我认为要做到这一点,我们必须将成功信息从roleProcess传递到角色,但我不知道如何在laravel中将变量或数据从一个方法传递到另一个方法。

如果我没有误解你的问题。

您希望在提交表单后的"user.Role"视图中显示单词"Role is added"。

尝试将以下代码放入"user.role"视图中

@if(Session::has('message'))
  {{ Session::get('message') }}
@endif