我有一个指定为= form_for [@driver,@driver_availability]
的form_for标记。它将输入的数据存储在driver_availabilities模型中,并调用DriversController的create方法。
是否可以调用我在不同控制器中定义的某个方法,但是像往常一样继续在driver_availabilities模型中保存数据?
谢谢
答案 0 :(得分:2)
[@driver, @driver_availability]
会针对新对象调用driver_driver_availabilities(driver_id: @driver)
,针对现有驱动程序可用性调用driver_driver_availability(driver_id: @driver, id: @driver_availability)
。因此,要么创建到另一个控制器的命名路由路由(请注意这些命名路由也用于索引,显示,更新和销毁),或者为表单标记提供url选项:
= form_for [@driver,@driver_availability], url: … # named route or routing hash
我会选择第二种选择。