я следующий кодmany_to_many, STI и отформатирует
class Category < ActiveRecord::Base
has_many :categorizations
has_many :posts, :through => :categorizations
end
class Post < ActiveRecord::Base
has_many :categorizations
has_many :categories, :through => :categorizations
end
class Categorization < ActiveRecord::Base
belongs_to :post
belongs_to :category
end
class NewsArticle < Post
end
ок, хорошо выглядит. I'me пытается получить все NewsArticle годов из категории
@news_articles = NewsArticle.paginate_by_category_id params[:category],
:page => params[:page], :per_page => 10,
:order => 'posts.created_at DESC'
и я вижу
NoMethodError in News articlesController#category
undefined method `find_all_by_category' for #<Class:0x103cb05d0>
, что я могу сделать, чтобы решить эту проблему?
выглядит намного лучше :)) спасибо :), но, к сожалению, сообщения не могут быть найдены, если категория модели находится под friendly_id (http://github.com/norman/friendly_id) :( PS: небольшая коррекция вашего примера - : условия => ['categories.id =?', Category_id] –
У меня есть немного обновил ваш пример, и теперь он отлично работает @category = Параметры категории.find [: category] @news_articles = NewsArticle.newest.by_category (@ category.id) ..... –