首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >default_url_options和rails 3

default_url_options和rails 3
EN

Stack Overflow用户
提问于 2011-05-24 01:54:14
回答 5查看 24.6K关注 0票数 17

由于ActionController::Base#default_url_options已被弃用,我想知道如何在rails3中设置默认url选项。默认url选项不是静态的,而是依赖于当前请求。

http://apidock.com/rails/ActionController/Base/default_url_options

谢谢,科林

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-06-05 06:09:13

要为当前请求设置url选项,请在控制器中使用类似以下内容:

class ApplicationController < ActionController::Base

  def url_options
    { :profile => current_profile }.merge(super)
  end

end

现在,:profile => current_profile将自动生成路径/url参数。

路由示例:

scope ":profile" do
  resources :comments
end

只需写下:

comments_path

如果current_profile将to_param设置为'lucas':

/lucas/comments
票数 26
EN

Stack Overflow用户

发布于 2011-05-24 02:12:41

我认为更好的方法是现在告诉路由器来处理这个问题:

Rails.application.routes.default_url_options[:foo]= 'bar' 

您可以将此行放入routes.rb或初始化器中。你喜欢哪一个都行。如果值根据您的环境而改变,您甚至可以将其放入您的环境配置中。

票数 24
EN

Stack Overflow用户

发布于 2012-08-24 03:02:18

该apidock.com链接具有误导性。default_url_options未被弃用。

http://guides.rubyonrails.org/action_controller_overview.html#default_url_options

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6100954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档