Я новичок в рельсах, и мне интересно, если это лучший способ сделать то, что я хочу сделать.
У меня есть контроллер, который создает сущности.
В зависимости от того, что будет отправлено, я хочу либо создать новую сущность с нуля, либо скопировать существующую.
Пока у меня есть
def create
if(params[:copy])
return copy_existing_entity params
else
return create_new_entity params
end
end
Пока что это выглядит странно - должно ли это быть сделано по-другому?
Исходя из Java-весны, я бы просто определил отдельные обработчики на контроллере следующим образом:
@RequestMapping(method = RequestMethod.POST, params="submit=Action 1")
public ModelAndView action1(@RequestParam("selectedItemKey") String key) {
ModelAndView mav = new ModelAndView("action1");
//Business logic
return mav;
}
@RequestMapping(method = RequestMethod.POST, params="submit=Action 2")
public ModelAndView action2(@RequestParam("selectedItemKey") String key) {
ModelAndView mav = new ModelAndView("action2");
//Business logic
return mav;
}
Предоставляет ли рельсы что-то подобное или я думаю об этом неправильно?
Спасибо за любые предложения