我正在编写我的第一个MVC Web应用程序,我正试图将其作为教科书和RESTful尽可能地保留。
它基本上是一个客户订购系统。我有以下网址路由到以下控制器方法
url - controller - method
/ customers customer-controller index(显示所有客户的列表)
/ customers / 1个客户 - 控制器视图(显示id = 1的客户的详细信息)
/ order order-controller index(显示所有订单的列表)
/ orders / 1 order-controller view(显示order_no = 1的订单详情)
我想要做的是在网址:/ customers / 1 / orders添加一个显示与特定客户关联的订单列表的页面。我不确定这应该映射到哪个控制器以及使用什么方法。
它应该进入客户控制器,订单控制器还是应该有新的客户订单控制器?
任何帮助,建议,评论都非常感谢,
感谢
吉姆
答案 0 :(得分:2)
正如我所看到的,您只是将过滤器应用于所有订单的列表。因此,使用Orders
控制器会更有意义。
此外,您可能会重新考虑路由策略。恕我直言,最好是这样的:/:controller((/:action)/:id)
,默认值为index
或list
。以下是此模式中的视图示例:
/orders << all of the orders
/orders/customer/2 << data for customer_id = 2
/orders/locations << orders , ordered by location
/orders/customer << orders , ordered by customer
/customers << all curomers
/order/details/1 << info for single order with id = 1
调查Kohana3如何进行路由可能对你有好处。对于它的所有问题,路由是最好的功能之一。
好吧..只是我的两分钱。