Rails: método no definido `stringify_keys '


80

Estoy intentando crear un bloque de código ruby ​​para cuando un usuario hace clic en el botón Atrás. Recibo el error "método indefinido` stringify_keys 'para "/ projects / 11 / steps / 4": String ". El código funciona cuando me deshago del do y el final. ¿Cómo agrego un do a un link_to?

    <%= link_to 'Back', project_step_path(@project, @project.steps.count-1), :class => "btn btn-small" do %>

    <% end %>

Respuestas:


199

Si está utilizando la forma de bloque de link_tono puede tener contenido de texto (el bloque es su contenido de texto). Necesitarías hacer esto:

<%= link_to project_step_path(@project, @project.steps.count-1), :class => "btn btn-small" do %>
  Back
<% end %>

Normalmente, esto se utiliza cuando desea tener imágenes u otras etiquetas como contenido del enlace. Es puramente con fines de exhibición. El bloque no le dará una funcionalidad similar a la de JavaScript, así que asegúrese de que lo que está buscando aquí sea un comportamiento de visualización adicional :)


4
esto funciona, gracias! Aceptaré su respuesta una vez que stackoverflow me deje en 11 minutos ...
— scientiffic

¡Gracias! Cuando lo usas, slimeso es tan extraño porque no tienes que abrir el bloque.
— igorgue

16

Si pasa un bloque, no pase el nombre del enlace. Debiera ser:

<%= link_to project_step_path(@project, @project.steps.count-1), :class => "btn btn-small" do %>
  Back
<% end %>
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.