【问题标题】:Making sub category in laravel website在 laravel 网站中制作子类别
【发布时间】:2016-09-19 19:51:24
【问题描述】:

所以我想扩展我的站点以拥有类似的区域站点,因此当用户打开我的站点时,系统会要求选择他/她感兴趣的区域,然后说他对伦敦感兴趣,然后该站点将生成一个已经与该地区相关的所有内容的网页...

我尝试以与创建管理员页面相同的方式通过在此路线中对它们进行分组

Route::group(array('prefix'=>'admins','before' => 'auth'),function(){
    Route::resource('partner','AdminPartnerController',array('except' => array('show')));
    Route::get('partner/index_kategori/{id}',array(
        'as' => 'admins.partner.index_kategori',
        'uses' => 'AdminPartnerController@index_kategori'
});

但这意味着我需要为要创建的每个区域创建不同的控制器功能,所以效率不高。

我想到的就像制作

www.websiteadress.com/region

那么我如何才能捕获那个“/region”并将该值添加到我在控制器中的每个函数中?如何建立那种路线?

更新:

为了更容易理解,我的问题是我有这条正常路线:

Route::get('product/{id}',array( 'as' => 'product','uses' => 'PublicController@product'));

当我输入时,这条路线的作用非常直接

www.websiteadress.com/product/12

它将打开 12 号的产品页面,所以我的问题是如果我像这样添加

www.websiteadress.com/Asia/product/12 

我如何让我的 PublicController 赶上亚洲,然后在我的产品功能中我将只处理它..?

【问题讨论】:

  • 也许可以这样制作路线:Route::get('product/{country}/{id}',array( 'as' => 'product','uses' => 'PublicController@product'));

标签: php laravel laravel-4


【解决方案1】:

当然,您不需要为每个区域创建控制器。您想使用带变量的简单路由:

Route::get('region/{region}', 'RegionController@show');

所有地区只有一个控制器:

public function show ($region)
{
    // Logic here
    return view('region.show', compact(['region']));
}

因此,当用户加载http://example.com/region/London 时,show 操作将在$region 变量中包含London

【讨论】:

  • 谢谢,但请查看我更新的帖子...以获得更好的理解
【解决方案2】:

所以在搜索了几天并四处询问之后,我终于找到了回答我自己问题的最佳解决方案,我愿意在这里分享它,所以有一天也许会有其他人想做想做的事......

所以首先在路线中创建这样的

Route::group(['prefix' => '{region}'], function(){
    Route::get('member',array('as' => 'member','uses' => 'PublicController@member'));
});

这条路由所做的只是将它分组为前缀,值在区域变量中,然后我将获取路由设置为控制器将用于显示页面的位置,并使用区域值

然后在我的 PublicController 中

public function sitemap($region){
  if($region =='london'){
     //do something
  }else{
    //do something
  }
}

就这样......我可以从前缀中获取那些区域值并使用它。就我而言,我用它来显示具有不同内容的某些页面。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-11
    • 2017-09-05
    • 1970-01-01
    • 2016-10-12
    • 1970-01-01
    • 2019-01-17
    • 2019-10-11
    • 2017-01-19
    相关资源
    最近更新 更多