Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 获取Ruby on Rails应用程序的主机/URL?延伸_Ruby On Rails_Ruby_Url - Fatal编程技术网

Ruby on rails 获取Ruby on Rails应用程序的主机/URL?延伸

Ruby on rails 获取Ruby on Rails应用程序的主机/URL?延伸,ruby-on-rails,ruby,url,Ruby On Rails,Ruby,Url,我读过另一个标题相同的问题,但实际上它没有得到应用程序的URL。它获取当前页面的URL,非常接近,并且非常适合问题的需要。遗憾的是,我没有当前页面,甚至没有控制器 我想获取应用程序的主机/URL。从一个工人的内部 我现在在Heroku上有两个“应用程序”。。。一次测试一次生产。从技术上讲,两者都是生产,一个是测试版,另一个是发布版 我希望能够计算出应用程序的URL,因为我将数据发送给第三方,并且我希望包含一个指向系统的链接(以及一个特定记录) 更多详细信息: 我让一名员工将包含产品详细信息的XM

我读过另一个标题相同的问题,但实际上它没有得到应用程序的URL。它获取当前页面的URL,非常接近,并且非常适合问题的需要。遗憾的是,我没有当前页面,甚至没有控制器

我想获取应用程序的主机/URL。从一个工人的内部

我现在在Heroku上有两个“应用程序”。。。一次测试一次生产。从技术上讲,两者都是生产,一个是测试版,另一个是发布版

我希望能够计算出应用程序的URL,因为我将数据发送给第三方,并且我希望包含一个指向系统的链接(以及一个特定记录)

更多详细信息:

我让一名员工将包含产品详细信息的XML文件发送到易趣。在产品详细信息中,有一个与HTML兼容的“描述”空间。。我想在那里有一个指向我的系统的链接,这样浏览者就可以看到超出eBay显示能力的详细信息。因此,我需要我的系统的URL

您可以使用以下方法访问Rails应用程序的路由帮助程序:

Rails.application.routes.url_helpers
要从此模块访问帮助程序,只需调用其上的方法并将其传递给主机:

Rails.application.routes.url_helpers.products_url(:host => "example.com")

您可以使用以下方法访问Rails应用程序的路由帮助程序:

Rails.application.routes.url_helpers
要从此模块访问帮助程序,只需调用其上的方法并将其传递给主机:

Rails.application.routes.url_helpers.products_url(:host => "example.com")

ENV/config中没有任何内容,但您可以添加以下内容:

heroku config:add HOST=warmmist837.herokuapp.com

或者更好

heroku配置:添加BETA=1

然后在代码中可以说
ENV['HOST']
ENV['BETA']

通常在rails代码中,我会说
Request.host
,但我认为这不会有什么帮助,因为您是工人而不是机架请求

此外,如果您担心在本地使用此设置,如果您使用的是RVM,那么您可以将export语句添加到.rvmrc中


export HOST=my.localmachine.com

在ENV/config中没有任何内容,但您可以添加以下内容:

heroku config:addhost=warmmist837.heroguapp.com

或者更好

heroku配置:添加BETA=1

然后在代码中可以说
ENV['HOST']
ENV['BETA']

通常在rails代码中,我会说
Request.host
,但我认为这不会有什么帮助,因为您是工人而不是机架请求

此外,如果您担心在本地使用此设置,如果您使用的是RVM,那么您可以将export语句添加到.rvmrc中


export HOST=my.localmachine.com

缺少要链接到的主机!请提供:host参数,设置默认的\u url\u选项[:host],或将:only\u路径设置为true@daveatflow:同时尝试向其传递主机选项。Ha。。这就是诀窍。。我不认识主人。我的应用程序运行在几个(现在两个,以后更多)系统上,每个系统都有不同的主机。这就是我想让rails告诉我的。如果没有请求的上下文,它将不知道。由于没有请求,工作人员对webcontext一无所知。我建议您在yaml中为您的应用程序配置它?或者作为一个常量或heroku配置,我也在想同样的@j_mcnally,我希望heroku可能有一个API调用或其他东西。。例如,如何通过代码获取数据库的位置。缺少要链接的主机!请提供:host参数,设置默认的\u url\u选项[:host],或将:only\u路径设置为true@daveatflow:同时尝试向其传递主机选项。Ha。。这就是诀窍。。我不认识主人。我的应用程序运行在几个(现在两个,以后更多)系统上,每个系统都有不同的主机。这就是我想让rails告诉我的。如果没有请求的上下文,它将不知道。由于没有请求,工作人员对webcontext一无所知。我建议您在yaml中为您的应用程序配置它?或者作为一个常量或heroku配置,我也在想同样的@j_mcnally,我希望heroku可能有一个API调用或其他东西。。比如如何通过代码获取数据库的位置。