方法未找到回形针

时间:2012-07-18 14:31:53

标签: ruby-on-rails ruby paperclip will-paginate

我得到了

undefined method `photo' for #<ActiveRecord::Relation:0x00000102a8a7c0>
我正在尝试在页面上显示图像时出现

错误。我正在使用回形针上传文件,并且会用_paginate。

以下是Admin :: Image model

的内容
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 %>

这里有什么问题?

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

Cthulhu是对的,你所缺少的是迭代集合:

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