【问题标题】:Getting Variables Passed In URL Laravel获取在 URL Laravel 中传递的变量
【发布时间】:2013-09-27 17:13:28
【问题描述】:

可能是一个基本问题,但我似乎无法理解。

我想将我的 url 中的变量抓取到我的控制器。

//索引视图

@foreach ($paymentInfos as $p)
        <tr>
             <td><a href="{{ URL::action('AdminController@getPackingSlip', array('order_id' => $p->order_id)) }}"> {{ $p->order_id }}</a></td>
             <td>{{ $p->lastname }} {{ $p->firstname }}</td>
             <td>{{ $p->buyer_email }}</td>
        </tr> 
      @endforeach

// 路线

Route::get('printpackingslip', 'AdminController@getPackingSlip');

// 控制器

class AdminController extends BaseController {

    /**
     * Display a listing of the resource.
     *
     * @return Response
     */
    public function getPackingSlip()
    {

        $rules = array('order_id' => 'order_id');


        return View::make('admin.packingslip')->with($rules);
    }
}

当您点击链接时,它会转到 www.domain.com/printpackingslip?order_id=3

我不知道如何在我的控制器中获取 order_id=3。

我最好还是使用 :(num) 来生成 /printpackingslip/3 的 URI 还是没关系?

例如:

// 在我的第一个视图中:

<td><a href="{{ URL::to('printpackingslip', array('order_id' => $p->order_id)) }}"> {{ $p->order_id }}</a></td>

// 然后是我的路线:

Route::get('printpackingslip/(:num)', 'AdminController@getPackingSlip');

谢谢!

【问题讨论】:

    标签: url laravel uri laravel-4


    【解决方案1】:

    这是 Laravel 4 吗?让我们回顾一下:

    路线:

    Route::get('printpackingslip/{order_id}', 'AdminController@getPackingSlip');
    

    控制器:

    class AdminController extends BaseController {
    
        public function getPackingSlip($order_id)
        {
            return "you selected $order_id";
        }
    }
    

    查看:

    @foreach ($paymentInfos as $p)
       ...
       <td><a href="{{ URL::route('printpackingslip', array('order_id' => $p->order_id)) }}"> {{ $p->order_id }}</a></td>
       ...
    @endforeach
    

    【讨论】:

    • 太棒了!一旦我看到它似乎很简单......再次感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-11
    • 2016-05-01
    • 2015-03-16
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 2018-11-06
    相关资源
    最近更新 更多