用两个变量laravel替换外部URL路由

时间:2016-05-27 07:23:42

标签: php laravel laravel-5 laravel-5.2 laravel-routing

我在laravel中有很多ecommerces应用程序,这个电子商务使用来自另一个laravel应用程序(laravel_modules)的外部模块。

我的 ecommerce1

中有路线编辑产品
Route::get('/edit/{article_name}/{article_id}', ['as' => 'edit_product', 'uses' => 'WebController@getEditProduct']);

我想用购物车行文章打印这条路线,问题是我在外部应用程序laravel_modules中迭代购物车行。

为此,我将路线('edit_product')从我的ecommerce1作为变量发送到laravel_modules应用中的'cart_widget'

我使用空参数(空格),因为我没有来自ecommerce1 应用程序的方法控制器getCart中的购物车行:

 public function getCart() {

    $widget_params = array(
        'url_edit'          => route('edit_product',[' ',' ']), #not pass variables, only spaces
        'css_type'          => 'basic', # basic, flex, bootstrap
        'js_ommited'        => 'jquery_fancybox',      # omited scripts
        'css_ommited'       => 'jquery_fancybox',      # omited styles
    );
  // I make a request to http://laravel-modules/cart-widget and send this params

你关注我?,好的,现在我们去模块laravel app,方法getCartWidget获取这个$ widget_params,我在widget_cart.blade.php中打印$ url_edit变量并迭代购物车行:

@foreach ($cartlines as $line)
<!-- EDIT BTN -->
@if ($line['quantity'] != '-1')
    @if ($is_modifiable)

    <a class="btn_link edit" href="{{ $url_constructor }}?line_ref={{ $line['cart_line_id'] }}">
       <i class="fa fa-pencil"></i>
    </a>

    @endif
@endif
<!-- //EDIT BTN -->
@endforeach

$ url_constructor打印http://ecommerce1.dev/edit/%20/%20

我想用我的购物车行变量替换%20(空格)

这样的事情:

<a class="btn_link edit" href="{{ str_replace('%20 and %20','with $line['article_name'] and $line['article_id']', $url_constructor) }}?line_ref={{ $line['cart_line_id'] }}">
           <i class="fa fa-pencil"></i>
        </a>

最后我想得到这个结果: http://ecommerce1.dev/edit/article-name/21 #articleid enter image description here

0 个答案:

没有答案