- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的应用程序的每个用户都有一个自定义 url(通过子域)存储在 db 中。
我的请求很简单,我想通过 json 提要发送“用户 url”,如下所示:
{user_name: "vincent", :user_url: "vincent.my_app.com"}
为此,我覆盖了用户模型的 as_json 函数:
def as_json(options={})
{
:user_name: self.name,
:user_url: root_url(:subdomain => self.subdomain)
}
end
我有这个附加模块(这很好用,不是真正的问题):
module SubdomainHelper
def with_subdomain(subdomain)
subdomain = (subdomain || "")
subdomain += "." unless subdomain.empty?
host = ActionMailer::Base.default_url_options[:host]
[subdomain, host].join
end
def url_for(options = nil)
if options.kind_of?(Hash) && options.has_key?(:subdomain)
options[:host] = with_subdomain(options.delete(:subdomain))
end
super
end
end
但是当我得到 json feed 时我有这个错误:
RuntimeError (Missing host to link to! Please provide :host parameter or set default_url_options[:host]):
指向用户模型的“as_json”方法。
当然,每个环境都在 dev.rb 中实现了 default_url_options:
config.action_mailer.default_url_options = {:host => 'my_app:3000'}
我不明白为什么以及如何修复它。请帮助我。
最佳答案
我遇到了类似的问题。不知何故,它似乎与 actionpack 的 url_helper 和我的字段名称有关。似乎以 *_url 结尾的字段名称存在问题。不完全明白为什么,但我有一个名为 login_url 的字段,我将其重命名为 login_uri(注意从 l 到 i 的变化),它解决了我的问题。
关于ruby-on-rails-3 - RuntimeError default_url_options 主机和 root_url(带子域),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5595921/
我创建了一个 Heroku 管道并设置了 Review Apps,以便它为每个 PR 创建一个应用程序。 使用 Meteor(我认为使用 Rails)需要设置 ROOT_URL —— 例如ROOT_U
我希望我的应用程序根据用户是否已登录在首页上显示不同的数据。 def index if current_user # render another controllers action
我在我的 Ubuntu 服务器上使用 PhantomJS 进行爬虫工作时遇到了一些问题。我在 Meteorpedia 上看到了这个故障排除: Ensure that the ROOT_URL that
在我的 Ruby on Rails 3.1 应用程序中,我有一个这样的链接: 在我的开发中。机器它呈现一个带有“localhost:3000”的链接。在生产中,它会呈现一个带有 IP 地址的链接,例
也许这是某种 Jekyll 设置或其他设置,但我需要将 root_url 设置为“/”以外的其他设置,但我不知道该在哪里设置。 最佳答案 在.themes/classic/source/_layout
也许这是某种 Jekyll 设置或其他设置,但我需要将 root_url 设置为“/”以外的其他设置,但我不知道该在哪里设置。 最佳答案 在.themes/classic/source/_layout
Octopress 的文档在不同的地方引用了 {{ root_url }},但是这个值在我的站点中使用时似乎是空白的。 我试图通过查找它在代码中定义的位置来研究它的用途,但找不到。 它被弃用了吗? 它
我有一个非常简单的 View link_to 问题没有错误消息只是网址“http://0.0.0.0:3000/.Hire”中的一个奇怪的点不知道为什么在根网址和雇用之间有这个点? 链接到: 如果我
在 Rails 中,有很多助手可以指导我们的操作,例如 collections_path new_member_path edit_member_path等等。 但根在哪里?有 helper 总是指向
我们使用 Rails 3.2.16 开发了一个站点,在开发和生产环境中一切都运行良好。当我们将域更改为如下内容时,问题就来了: http://live.mysite.com.es 在更改我们的域后,几
我正在开发的应用程序大量使用了 Rails services 。我的问题是我需要获取应用程序的根 url,类似于您在 View 中使用 root_url 的方式,但这在服务中不起作用。除了在我的每个环
我想通过为它们添加来编辑 DB 中的实体 URL。我如何使用 root_url或 root_path在序列化程序中? 像这样的东西: class TrackSerializer < ActiveMod
每当用户访问错误的页面时,rails 都会显示公共(public)文件夹中的 404.html。但是,我只想将浏览器重定向到根页面,而不显示任何内容。于是我尝试了globbing,但没有成功,仍然显示
我们正在使用外部 CMS 来管理我们的站点,我想确保在我们的 Rails 应用程序内部,root_url 指向该外部 url。我们有什么办法可以做到这一点吗? 类似于: root :to => "ht
通过使用 Devise 进行身份验证和 CanCan 进行授权的 Rails_Admin 标准安装,访问 http://localhost:3000/admin作为非管理员用户生成以下服务器日志: S
我的应用程序的每个用户都有一个自定义 url(通过子域)存储在 db 中。 我的请求很简单,我想通过 json 提要发送“用户 url”,如下所示: {user_name: "vincent", :u
Meteor.absoluteUrl 有一个创建 HTTPS URL 的 secure 选项,所以我猜 Meteor 只允许 http 或 https 协议(protocol)。那么不包含协议(pro
这是我的users_controller 方法。如果用户未激活,则应将其重定向。 def show @user = User.find(params[:id]) redirect_to roo
我正在制作一个简单的 php 应用程序,它使用 twitter 登录,如 http://www.1stwebdesigner.com/tutorials/twitter-app-oauth-php/
我网站的 CSS 在桌面浏览器和移动浏览器上运行良好,但是当我单击链接返回主页“root_path”时,我的一些 CSS 样式消失了。 #routes.rb resources :welcomes
我是一名优秀的程序员,十分优秀!