#ruby-on-rails #ruby #ruby-on-rails-3
#ruby-on-rails #ruby #ruby-on-rails-3
Вопрос:
У меня есть рендеринг:
= render :partial => 'friendship/friends', :collection => @friendships.find_all{|item| item.friend.friends.include?(current_user)}
Код рендеринга:
= content_tag_for(:tr,friendship) do
%td
=link_to friendship.friend do
.post_image.fl_l
=image_tag friendship.friend.avatar.url(:thumb)
=friendship.friend.name
=friendship.friend.surname
%br
=link_to "remove",friendship,:method => :delete
Он выдает эту ошибку:
> undefined local variable or method `friendship' for
> #<#<Class:0x5ce61b8>:0x5ce35c0>
В моем действии контроллера у меня есть
@friendships = current_user.friendships
@users_friended =current_user.inverse_friends
respond_to do |format|
format.html
format.js
Я делал то же самое с message
= render :partial => 'messages/message', :collection => @messages_received
Код рендеринга имел
= content_tag_for(:tr,message) do
....
действие контроллера имело
@user = User.find(params[:id])
@messages_received=@user.received_messages.reverse
@messages_sent=@user.sent_messages.reverse
respond_to do |format|
format.html
format.js
и это сработало нормально. Я думаю, что я делал то же самое, но это не работает. Что я делаю не так?
Комментарии:
1. извините, моя ошибка, я думал, что второй параметр content_tag является объектом массива render:collection, это неправильно
2. если это решит вашу проблему, вы должны опубликовать ответ самостоятельно и принять его