我正在尝试为一个模型生成一个 URL,该模型是从一个不是的控制器命名的。例如:
module SomeStuff
class Widget < ActiveRecord::Base; end
end
class WidgetsController < ApplicationController
def create
w = Widget.create(params)
location = url_for w
render :json => w, :location => location
end
end
问题是 Rails 想要一个“some_stuff_widget_path”存在,但它不存在,因为控制器没有命名空间。我尝试了另一篇文章(http://stackoverflow.com/questions/4404440/rails-url-for-and-namespaced-models)中给出的解决方案,但它们似乎不起作用。
从技术上讲,我的模型位于一个单独的 gem 中,该 gem 具有命名空间,然后我的 Rails 应用程序包含该 gem 并提供控制器。在不更改该设置的情况下,有没有办法让“url_for”工作?