Если вы хотите, чтобы метод был доступен для просмотра, у вас есть несколько вариантов:
- положи в модель
- положи в помощник
- поместите его в контроллер и добавьте строку "helper_method: find_albums_with_feature"
Но я думаю, что вы можете сделать это лучше. Во-первых, не ставьте в поле зрения какие-либо методы поиска. Поместите это в контроллер. Во-вторых, вам не нужно указывать свой собственный метод поиска. Возможно, у вас есть что-то подобное в ваших моделях:
class Album << ActiveRecord::Base
has_many :albums_features
has_many :features, :through => :albums_features
end
class AlbumsFeature << ActiveRecord::Base
belongs_to :album
belongs_to :feature
end
class Feature << ActiveRecord::Base
has_many :albums_features
has_many :albums, :through => :albums_features
end
С его помощью вы можете найти альбомы с определенной функцией, например:
@feature = Feature.find(id)
@albums = @feature.albums
или
@albums = Feature.find(id).albums
и это должно быть в вашем контроллере. В связи с этим вы должны отображать только результаты.
Если вам нужна дополнительная информация об ассоциациях, посмотрите здесь: http://guides.rubyonrails.org/association_basics.html. Я думаю, что это лучшее место, где вы можете узнать о Rails - по крайней мере, для меня.