Cómo mostrar un perfil con link_to rails

En el último generamos un enlace útil para nuestro correo. generar una url real con rieles para un correo electrónico Esto funciona bien, muy bien. Pero queremos llamar a la acción del zapato :-)

<%=link_to('Link', :controller => 'mycontroller', :action => 'show', :id => @mycontroller.id )%> 

La URL se ve tan

http://localhost:3000/mycontroller/show/10

necesitamos esta estructura

http://localhost:3000/mycontroller/10

El sistema rake routes comando dijo esto

mycontroller GET    /mycontroller/:id(.:format)               mycontroller#show

¿Cómo conseguimos la estructura necesaria? ¿Necesitamos editar nuestras rutas o hay otra forma de obtener la URL correcta?

preguntado el 03 de mayo de 12 a las 21:05

Cómo tu routes.rb archivo se ve ahora? ¿Puedes pegarlo aquí? -

1 Respuestas

Intenta usar el asistente de ruta

  mycontroller_url(@mycontroller.id)

en cambio, el {:controlador => ..., :acción => ...}

su link_to helper debería verse así para un mejor ejemplo, uso la acción de mostrar del usuario

las rutas de rake devuelven esto

user GET  /users/:id(.:format) users#show

y ahora sé que puedo usar el ayudante user_url(@user)

<%=link_to('Link', user_url(@user) )%> 

contestado el 03 de mayo de 12 a las 21:05

Esto funciona pero hay otro error. El :only_path => false no se tomará. la url se ve asi mycontroller/:idAsí es, pero sin anfitrión. - amarradi

Una solución que no es la mejor es construir una url y no un enlace <%=url_for(:action => 'show', :controller => 'wishlists',:only_path => false, :id => @wishlist.id)%> - amarradi

ok, probablemente debería configurar el host en la configuración de su correo o en el correo - Suborx

Eso es todo, no necesitamos enlaces, necesitamos direcciones URL :-) Gracias a ti. buenas noches - amarradi

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.