2012-07-18 30 views
0

我得到找不到方法回形针

undefined method `photo' for #<ActiveRecord::Relation:0x00000102a8a7c0> 

错误,而我想我的网页上显示图像。我使用回形针上传文件和will_paginate。

下面是联系的内容::图像模型

class Admin::Image < ActiveRecord::Base 
    attr_accessible :added_on, :title, :photo 

    validates_presence_of :title 
    validates_presence_of :photo 

    self.per_page = 15 

    has_attached_file :photo 
end 

这里是图像控制器

class ImagesController < ApplicationController 
    def index 
    @data = Admin::Image.paginate(:page => params[:page]) 
    end 
end 

的内容和观点

<%= image_tag @data.photo.url %> 

这里有什么问题?

回答

1

在控制器中,您将Admin :: Image对象的集合分配给@data实例变量(BTW为什么不称为@images),并且在视图中您试图对整个集合调用“照片”方法,而'照片'方法在Admin :: Image对象中可用。

0

邪神是正确的,你缺的是遍历集合:

<% @data.each do |datum| %> 
    <%= image_tag datum.photo.url %> 
<% end %>