sé que hacerRubyOnRails: url_for raíz de la aplicación
url_for(:only_path => false, :controller => 'home')
que obtendrá, por ejemplo, http: // localhost/home
Pero ¿Cómo manejo a genereate http:// localhost
sé que hacerRubyOnRails: url_for raíz de la aplicación
url_for(:only_path => false, :controller => 'home')
que obtendrá, por ejemplo, http: // localhost/home
Pero ¿Cómo manejo a genereate http:// localhost
Dependiendo de cuáles sean sus objetivos, hay algunas maneras de usar el nombre del servidor o la URL base. Para el caso general de "solo necesito una URL base confiable que pueda usar en cualquier lugar", utilizo el método config.
# via routes.rb
map.root :controller => "foo", :action => "bar"
# view/controller:
root_url # inflexible. root_url will only ever be one URL
# via request object
url_for("http://"+request.host) # not available in models
# via config file (see railscast 85)
# environment.rb
APP_CONFIG = YAML.load_file("#{RAILS_ROOT}/config/config.yml")[RAILS_ENV]
# config/config.yml
development:
server_name: localhost:3000
production:
server_name: foo.com
# view/controller:
url_for(APP_CONFIG('server_name'))
para obtener http://localhost, usted simplemente:
<%= link_to "Home", root_path %>
Eso va a generar: <a href="/">Home</a>
que enlazará con eficacia a http://localhost
También puede utilizar: ActionController :: Base. raíz_url_relativa
es decir #{ActionController::Base.relative_url_root}/images/my_img.jpg
Esta es una vieja pregunta, pero aún ocupa un lugar destacado en las búsquedas. Actualmente, usa root_url.
p. Ej.
<%= link_to "fully qualified root", root_url %>
generará
<a href="http://www.example.com/">fully qualified root</a>
Para ser claros, mapas root_path a "/" mientras que los mapas root_url a la URL raíz absoluta (por ejemplo, "http: // localhost: 3000 /") – user456584