AppScreenshot
class AppScreenshot < ActiveRecord::Base include Cacheable belongs_to :app model_cache do with_key end scope :available , where(["state > ? and is_icon = ? ",0,0]) end
Приложение:
class App < ActiveRecord::Base include Cacheable #acts_as_cached :ttl => 30.minutes has_many :apk_files has_many :app_screenshots.available end
почему has_many :app_screenshots.available?
has_many :app_screenshots.available
если вы выполните 1. AppScreenshot и 2. App:, он выдаст сообщение об ошибке, потому что вы не можете вызвать этот путь.
: app_screenshots это просто символ Ruby, поэтому вы не можете вызывать методы для него таким образом.
Я думаю, что-то вроде has_many :app_screenshots, :conditions => 'state > 0 and is_icon = 0'
has_many :app_screenshots, :conditions => 'state > 0 and is_icon = 0'
должно работать в вашем случае.