我正在将 STI 与 Rails 3.2 应用程序一起使用。我想强制 Rails 使用 link_to
中的父类(super class)名称帮助程序(或生成路径时的任何其他位置)而不是子类名称。
所以,<%= link_to current_user.name, current_user %>
产生/:class_name/:id
(类(class)名称可以是“主持人”、“成员(member)”等...)。
我希望它生成 /users/:id
,其中users
不会更改子类的名称。我知道我可以改变current_user
至user_path(current_user)
,但我更喜欢使用快捷方式,让 Rails 自己解决。
这可能吗?
最佳答案
我认为你应该定义 url 助手,像这样
def moderator_url record
user_url record
end
或者只使用别名
alias :moderator_url :user_url
当您将记录作为选项传递时,这是 Rails 用于生成 url 的代码
关于ruby-on-rails - 使用 STI 时,如何强制 Rails 在 link_to 帮助程序中使用父类(super class)名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11849072/