我有活动,细分为一日活动,经常性活动和节日活动。
我应该为每种类型的事件创建不同的路由,还是应该在单个路由api_v1/events
上处理不同的事件类型,并从客户端发送参数eventType
并基于过滤器在这个参数?
我有一个事件的抽象类,我将从中扩展不同的事件类型,因此我的计划是基于此参数在资源控制器中实例化一个不同的类。
唯一的问题是我会有很多代码重复,即。
if(eventtype == 'festival'){}
等......用于索引,表演等方法 这对我来说似乎是不好的做法 什么设计明智是解决这个问题的最佳选择?
答案 0 :(得分:0)
你应该有一条路线。
/api/events/recurring // returns all recurring events
/api/events/one-day // all one day events
/api/events/festivals // all festivals
然后是个别事件
/api/events/recurring/{eventName} // returns a specific event
// etc...
所以,基本结构是
/api/events/{eventType}/{eventName}
在您的代码中,您需要两个处理程序:
/api/events/{eventType} // handles multiple events
/api/events/{eventType}/{eventName} // handles a single event