Hola, no sé si he entendido lo que quieres hacer. ¿Es una acción animes
en el controlador que te lleve a una pagina en la que tengas un listado
de todos los animes y que cada nombre del anime sea un enlace a un
action articulo pasándole como parametro el id del anime? Si es asÃ
puedes hacerlo de esta manera:
index_controller.rb:
def animes
@animes_pages, @animes = paginate :animes, :order => ‘name asc’
render :action => ‘lista_series’
end
Esto no cambia(bueno yo he llamado al atributo name pero es lo mismo).
lista_series.rhtml:
<%= render(:partial => “anime”, :collection => @animes) %>
<%= pagination_links (@animes_pages) %>
<%= link_to ‘Volver’, :action => ‘index’ %>
_anime.rhtml:
<%= link_to anime.name, :action => 'articulo', :anime_id => anime.id %>
He cambiado el nombre del partial a _anime.rhtml porque de esta manera
al hacer
<%= render(:partial => “anime”, :collection => @animes) %> le estamos
pasando para cada elemento de la colección @animes una variable que en
cada momento es anime y nos permite hacer en _anime.rhtml:
anime.name ó anime.id
es decir el nombre del partial se identifica con el nombre de la
variable que itera por la colección.
Si no es esto lo que quieres hacer espero que por lo menos te sirva de
guÃa.
Lo que tenÃas de @animes.nombres me parece extraño porque @animes es la
coleccion, es un array y estás accediendo a un metodo (nombres) que no
existe.
Pero igual lo he entendido mal y no quieres hacer lo que he hecho.
Un Saludo.
Crohno wrote:
ola, veran tengo un codigo que no deja de joderm** y queria pedir ayuda
ya que hace 2 dias que llevo intentado solucionarlo
index_controller.rb:
def animes
@animes_pages, @animes = paginate :animes, :order => ‘nombre asc’
render :action => ‘lista_series’
end
lista_series.rhtml:
<% for anime in @animes -%>
<%= render_partial "lista_serie", anime %>
<% end %>
<%= pagination_links (@animes_pages) %>
<%= link_to 'Volver', :action => 'index' %>
_lista_serie.rhtml:
<%= link_to @animes.nombres, :action => 'articulo', :anime_id => anime
%>
La parte de la base de datos(la de la tabla animes):
id => int
nombre => varchar
imagen => varchar
el error que me da es:
undefined method `nombres’ for #Array:0x25f8f60 en la linea dos, que
seria:
<%= link_to @animes.nombres, :action => ‘articulo’, :anime_id => anime
%>