【问题标题】:Creating a route? Within a controller action_index? Kohana创建路线?在控制器 action_index 内?小花
【发布时间】:2015-07-28 17:42:16
【问题描述】:

我正在与 kohana 合作,因为开发速度非常快。现在我想实现一些我无法真正想到的解决方法。

我想要实现的,有一个控制器。它被称为Controller_Restaurants 但是这些餐厅,是按省份分组的,点击省份后,按城市分组,然后显示餐厅列表。

所有城市和省份都已添加到带有字段的特定数据库中。

我想在我的控制器中创建一个路由。那么我可以实现以下链接:

domain/restaurants/province/city/restaurant-name

?

或者我是不是在想,我应该以其他方式解决这个问题吗?

【问题讨论】:

  • 如果您希望快速完成,请执行有效的操作。确切的问题是什么?
  • 路由中可以提供可选参数,请阅读the manual。可能的路线可能是restaurants(/<province>(/<city>(/<name>)))
  • 我尝试自己添加一条路线,但它没有用,但显然 Ramon 的代码完美运行.. 好吧,我想我看的不够仔细,谢谢,我忘了我有这个问题。但是我用过滤器操作功能解决了这个问题,我想用这个问题来解决这个问题。对于给您带来的不便,我深表歉意。

标签: php model-view-controller kohana


【解决方案1】:

可以在 Kohana 的控制器内创建路由,但它不会帮助您解决问题,因为路由已经发生了。

您需要做的是按照@kingkero 的建议创建一个带有可选参数的路由:

restaurants(/<province>(/<city>(/<name>)))

然后像这样从控制器访问 URL 中的参数:

$province = $this->request->param('province');
...

【讨论】:

    【解决方案2】:

    像这样构建你的路由:

    Route::set('restaurants', 'restaurants(/<province>(/<city>(/<name>))))',
        array(
            'controller' => 'restaurants',
            'action' => 'index',
        ));
    

    它应该像这样工作。

    【讨论】:

      猜你喜欢
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-23
      • 2017-01-18
      • 1970-01-01
      • 2012-05-14
      相关资源
      最近更新 更多