¿Cómo hacer un enlace con otra página html de Rails?
Soy novato con Rails e intento hacer un programa simplemente Rails y cumplir con este problema.
Intenté hacer un botón y quiero hacer este enlace de botón a otra página.
Como decían en el código de muestra, escribí este código para hacer el botón que llamó "localización"
Location
Entonces, escribí este código que pensé que podría ayudar al botón "ubicación" enlace a la página "Acerca"
<%= link_to "About", pages_faction_path, class: "nav-link" %>
Pero no funciona. También pienso en este código
, pero tampoco funciona. Todo lo que necesito es hacer este enlace de botón a la página.
¿Podrías darme algunas ideas para que este botón funcione también? Muchas gracias.
Pregunta hecha hace 3 años, 4 meses, 28 días - Por scriptsorcerer
3 Respuestas:
-
Puedes usar bootstrap
About
para hacer el botón, luego rellenar el url en la propiedad hrefRespondida el Dec 18, 2020 a las 04:49 - por pixelpilot
Votos positivos: 0 | Votos negativos: 0 -
Claro, veo que estás teniendo problemas para crear un enlace a otra página HTML en Rails. Aquí te dejo algunas sugerencias para que puedas hacerlo de manera correcta:
- Para enlazar a otra página HTML en Rails, asegúrate de que esa página esté dentro del directorio `app/views`.
- En tu archivo de vista donde quieres mostrar el enlace (por ejemplo, en un archivo
app/views/layouts/application.html.erb
para que aparezca en todas las páginas), puedes usar el siguiente código para crear un enlace a una página HTML llamada "Location.html":
erb <%= link_to "Location", "Location.html" %>
- Si la página a la que quieres enlazar es una vista de Rails (y no un archivo HTML simple), entonces puedes utilizar las rutas definidas en tu archivo
config/routes.rb
. Por ejemplo, si tienes una ruta definida para la página "About", podrías enlazar a ella de la siguiente manera:
erb <%= linkto "About", aboutpath, class: "nav-link" %>
Recuerda que las rutas en Rails suelen seguir un patrón de nombre_path, donde
nombre
es el nombre que le has dado a la ruta en tu archivoroutes.rb
.Espero que estas sugerencias te ayuden a solucionar tu problema. ¡Déjame saber si necesitas más ayuda!
Respondida el Dec 19, 2020 a las 04:45 - por Gpt
Votos positivos: 0 | Votos negativos: 0 -
Solución:
Para crear un enlace a otra página HTML en Rails, debes utilizar el método
link_to
como se muestra a continuación:ruby <%= link_to "Location", location_path %>
Asegúrate de que has definido una ruta llamada
location
en tus rutas de Rails. Por ejemplo, enconfig/routes.rb
:ruby Rails.application.routes.draw do get 'location', to: 'pages
location' endEsta ruta creará una nueva ruta
/location
que llamará al métodolocation
en el controladorPages
.Problema con tu código original:
En tu código original:
ruby
Estableces el atributo
href
directamente en el elemento HTML<a>
. Sin embargo, en Rails, debes usar el métodolink_to
para generar automáticamente el atributohref
y garantizar que se establezca la ruta correcta.Código actualizado:
Tu código actualizado debería verse así:
ruby
- <%= link_to "Location", location_path %>
Esto creará un elemento
<a>
con el atributohref
establecido en la ruta/location
, que te permitirá navegar a la página "Localización" cuando se haga clic en el botón.Respondida el Dec 19, 2020 a las 04:57 - por Gemini
Votos positivos: 0 | Votos negativos: 0