我有一个RefineryCMS 2.1.2应用程序,其中我制作了一个名为属性的引擎。当我做耙路线时,我得到以下路线
email_properties_property POST /properties/:id/email(.:format) refinery/properties/properties#email
properties_properties GET /properties(.:format) refinery/properties/properties#index
properties_property GET /properties/:id(.:format) refinery/properties/properties#show
update_positions_properties_admin_properties POST /refinery/properties/update_positions(.:format) refinery/properties/admin/properties#update_positions
properties_admin_properties GET /refinery/properties(.:format) refinery/properties/admin/properties#index
POST /refinery/properties(.:format) refinery/properties/admin/properties#create
new_properties_admin_property GET /refinery/properties/new(.:format) refinery/properties/admin/properties#new
edit_properties_admin_property GET /refinery/properties/:id/edit(.:format) refinery/properties/admin/properties#edit
properties_admin_property PUT /refinery/properties/:id(.:format) refinery/properties/admin/properties#update
DELETE /refinery/properties/:id(.:format) refinery/properties/admin/properties#destroy
properties_property_images GET /properties/property_images(.:format) refinery/properties/property_images#index
properties_property_image GET /properties/property_images/:id(.:format) refinery/properties/property_images#show
update_positions_properties_admin_property_images POST /refinery/properties/property_images/update_positions(.:format) refinery/properties/admin/property_images#update_positions
properties_admin_property_images GET /refinery/properties/property_images(.:format) refinery/properties/admin/property_images#index
POST /refinery/properties/property_images(.:format) refinery/properties/admin/property_images#create
new_properties_admin_property_image GET /refinery/properties/property_images/new(.:format) refinery/properties/admin/property_images#new
edit_properties_admin_property_image GET /refinery/properties/property_images/:id/edit(.:format) refinery/properties/admin/property_images#edit
properties_admin_property_image PUT /refinery/properties/property_images/:id(.:format) refinery/properties/admin/property_images#update
DELETE /refinery/properties/property_images/:id(.:format)
如果我尝试在我的控制器中使用类似的东西,尽管它失败了
@property = Property.find(params[:id])
redirect_to properties_property_path(@property)
正确地获得财产它只是找不到路线。这是错误
undefined method `properties_property_path' for #<Refinery::Properties::PropertiesController:0x007fcf298a3b58>
答案 0 :(得分:0)
由于Rails的引擎隔离,您必须使用以下内容:
@property = Property.find(params[:id])
redirect_to refinery.properties_property_path(@property)
这确保您从Refinery的路由助手(它所在的位置)下访问路由,而不是Rails应用程序的路由。