我试图在用户页面上设置我的应用程序,如果他们没有任何图像,那么它会显示文本说他们没有。它还会显示上传新图片的链接。
我试过了,但它显示了undefined method 'image?' for #<WillPaginate::Collection:0x007f93a1e0e638>
- if @images.image?
- @images.each do |image|
= image_tag ("devices/#{image.device}.png"), :class => "img_#{image.device}"
- if image.image?
= link_to image_tag(image.image_url(:small), :class => "explore_#{image.device}"), image
- else
= image_tag '123-small.jpg', :class => "explore_#{image.device}"
- else
%p Looks like you don't have any images uploaded!
编辑:images_controller.rb
def index
@title = "My Images"
@images = current_user.images.paginate(:page => params[:page])
end
答案 0 :(得分:3)
看起来你正试图测试@images
中是否有任何图像,并且只是使用了错误的方法。而是尝试:
- if @images.present?
答案 1 :(得分:0)
根据您的代码,@images
显然是WillPaginate::Collection
image
,其行为类似于数组。
因此,要测试@images
是否为空,您应该使用if @images.present?
或unless @images.empty?
代替。