在Rails3中,有没有一种方法可以检查我现在渲染的页面是否是从同一个应用程序请求的,而不使用硬编码的域名?
我目前的代码如下:
我目前的代码如下:
def back_link(car_id = '')
# Check if search exists
uri_obj = URI.parse(controller.request.env["HTTP_REFERER"]) if controller.request.env["HTTP_REFERER"].present?
if uri_obj.present? && ["my_domain.com", "localhost"].include?(uri_obj.host) && uri_obj.query.present? && uri_obj.query.include?('search')
link_to '◀ '.html_safe + t('back_to_search'), url_for(:back) + (car_id.present? ? '#' + car_id.to_s : ''), :class => 'button grey back'
end
end
但是这种方法没有检查域名前面的“www。”和其他所有可能的情况。
如果我能找到在先前页面中使用的特定控制器和操作(即引用页),那将会很好。