【问题标题】:How to redirect to a specific url如何重定向到特定的url
【发布时间】:2015-06-22 05:20:45
【问题描述】:

我有以下代码:

public function numbergrouppost() {

              $groupname            = Input::get('groupname');  
              $no_of_members        = Input::get('no_of_members');

               $create       = Group::create([
               'group_name'          => $groupname,
               'no_of_members'       => $no_of_members, 
               'user_id'             => Auth::id()]);

       return Redirect::route('grouppage');

问题是如何重定向到 url 中包含 group_id(主键)的页面。换句话说,我想重定向到如下所示的网址:

'/grouppage/{id}'

我可以在我的家庭控制器中创建一个函数,但我如何访问$groupname 变量(代码如下)?还是最好查询用户最近创建的组?

public function groupname() {

$groupbutton = Group::where('user_id', Auth::id())->where('group_name', $groupname)->first();

               return View::make('grouppage');

路线:

Route::get('/grouppage/{id}', array( 'as' => 'grouppage', 'uses' => 'HomeController@groupname'));

【问题讨论】:

    标签: laravel laravel-4


    【解决方案1】:

    假设$groupId 是组的ID,您可以像这样在路由上传递变量:

    return Redirect::route('grouppage', ['id' => $groupId]);
    

    然后,在您的 groupname 函数中,您可以检索 id

    public function groupname($id) {
        // get group by id
        $groupbutton = Group::where('user_id', Auth::id())->where('id', $id)->first();
    
        // pass the gruoupbutton to the view
        return View::make('grouppage', ['groupbutton' => $groupbutton]);
    }
    

    【讨论】:

      【解决方案2】:

      您可以通过传递参数重定向到您的路线。例如,如果您的组 id 是 10,您可以尝试以下方法。

      return Redirect::route('grouppage', array(10));
      

      在您的情况下,可以使用 $create->group_id 检索 group_id。

      return Redirect::route('grouppage', array($create->group_id));
      

      请参考http://laravel.com/docs/4.2/responses#redirects

      【讨论】:

      • 我可以很好地传递参数,但是如何让我的 url 看起来也像 '/grouppage/32' 例如
      • 其实我不清楚你在问什么。但是通过您的代码,我认为您正在尝试做的是, 1. 将数据传递给 numbergrouppost 方法。 2. 在该方法中创建一个新组。 3. 重定向到新创建的群组页面。所以我觉得你想要的是显示有关新创建组的详细信息?如果是这种情况,您的控制器方法应该类似于 groupname($id),然后您可以按 Id 检索组,并将数据传递给视图。
      • 感谢@uiroshan 虽然这是因为我没有将$create->group_id 存储在变量中。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-31
      • 2018-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多