让我们考虑以下情况。有可以从Rails应用程序的“管理”和“配置”部分访问的products_controller。
在我看来,我需要区分我目前在哪一节(即“管理”或“配置”)。取得正确结果的最佳做法是什么?
想到了几个解决方案吗?
在给定的情况下,什么才是正确的方法?
发布于 2011-08-17 08:33:04
如果它只是用于日志记录,那么添加一个参数就足够了。
如果处理事物的逻辑取决于用户来自何处,那么就选择不同的路由映射到不同的操作。
如果您不想添加参数,但它是用于日志记录的,则还可以创建非常规路由:
resources :products, :except => [:new, :create] do
collection do
get products/new(/:section) => "products#new"
post products(/:section) => "products#craete"
end
end现在您可以使用new_message_path(:section => "admin")了,它将导致路径/products/new/admin,您可以在params[:section]中使用:section。
https://stackoverflow.com/questions/7089603
复制相似问题