button_to - Ruby on rails link_to sintaxis
rails link_to format (3)
Después de seguir un tutorial que encontré. Ahora lo estoy rehaciendo nuevamente, sin la parte del andamiaje, para aprenderlo mejor.
Sin embargo, editando mi / app / views / home / index.html.erb para que contenga:
<h1>Rails test project</h1>
<%= link_to "my blog", posts_path>
Me sale un error:
undefined local variable or method `posts_path'' for #<ActionView::Base:0x4e1d954>
Antes de hacerlo, ejecutaba rake db:create
, definía una clase de migración y ejecutaba rake db:migrate
, todo sin problemas.
Entonces, la base de datos debe contener una tabla de publicaciones. Pero ese comando link_to
no parece encontrar posts_path
. Esa variable (¿o es incluso una función?) Probablemente se define a través de la rutina de andamio.
Mi pregunta ahora es; ¿cómo hago eso manualmente yo mismo, defino posts_path
?
Los métodos _path se generan dinámicamente de forma típica. El error de método faltante se produce cuando no hay una ruta al objeto especificado o en este caso el método al que está llamando explícitamente.
Definir una ruta debería solucionar esto. HermanD de arriba mostró una forma de hacer esto.
Puede ejecutar ''rutas de rake'' desde la raíz de su aplicación de rieles para ver todas las rutas que están configuradas
<% = link_to "my blog", posts_path>
Si esto es exactamente lo que su erb contiene, le falta el signo de porcentaje al final del elemento scriptlet. No estoy seguro de si eso causó su problema, o tal vez estoy tomando las cosas demasiado literalmente ....
Deberá definir una ruta a sus publicaciones en config/routes.rb
Sintaxis de Rails 2.x:
map.resources :posts
Sintaxis de Rails 3.x:
resources :posts