У меня есть 2 таблицы, один из venuetypes и один из mapicons.Тип venuetype принадлежит mapicon.
У каждого mapicon есть имя и изображение, загруженное с помощью скрепки.
Когда я просматриваю запись типа venuetype, у меня отображается соответствующий mapicon с использованием этого бита кода:
<%= image_tag @venuetype.mapicon.mapicon.url(:mapicon) %>
У меня есть другая таблица мест, где каждое место принадлежит типу venuetype.
Однако, когда я просматриваю запись места на странице индекса, mapicon не отображает изображение, оно просто показывает как пустой элемент div ссвойства, установленные в классе css.
Это код, который я использую, чтобы попытаться отобразить mapicon:
<div id="venue_map_icon_<%= venue.id %>" style="position:absolute;" <%= image_tag (venue.venuetype.mapicon.mapicon.url(:mapicon)), :class => "mapicon" %></div>
Я надеюсь, что мой вопрос имеет смысл, я постараюсь уточнить, если нужно, спасибоза любую помощь, она очень ценится!
редактировать
модель Mapicon
class Mapicon < ActiveRecord::Base
has_many :venuetypes
has_attached_file :mapicon,
:styles => {
:mapicon => "20x20" }
end
Venuetype модель
class Venuetype < ActiveRecord::Base
has_many :venues
belongs_to :mapicon
has_attached_file :icon,
:styles => {
:thumb=> "100x100>",
:small => "150x150>",
:medium => "300x300>",
:large => "400x400>" },
:default_url => '/images/noimage.png'
end
модель объекта
class Venue < ActiveRecord::Base
attr_accessible :name, :addressline1, :addressline2, :addressline3, :addressline4, :postcode, :phonenumber, :about, :icontoppx, :iconleftpx, :area_id, :venuetype_id, :lat, :long, :venuephotos_attributes
belongs_to :area
belongs_to :venuetype
has_many :reviews
has_many :venuephotos
accepts_nested_attributes_for :venuephotos, :allow_destroy => true
scope :with_type, lambda { |types|
types.present? ? where(:venuetype_id => types) : scoped }
scope :with_area, lambda { |areas|
areas.present? ? where(:area_id => areas) : scoped }
def to_param
"#{id}-#{name.gsub(/\W/, '-').downcase}"
end
end