Это мои модели (обе имеют только атрибут name:string
):
class Category < ActiveRecord::Base
has_many :subcategories
end
class Subcategory < ActiveRecord::Base
belongs_to :category
end
Я начал rails console
:
> c = Category.new(:name => "C1")
=> #<Category id:nil, name:"C1", created_at:nil, updated_at: nil>
> c.save
=> true
> s = c.subcategories.create(:name => "S1")
=> #<Subcategory id:2 name:"S1", created_at: "2011-03-16 17:45:18", updated_at: "2011-03-16 17:45:18">
> s.category
=> nil
> s.save
=> true
> c.subcategories
=> ActiveRecord::StatementInvalid: SQLite3::SQLException: no such column subcategories.category_id: SELECT "subcategories".* FROM "subcategories" WHERE("subcategories".category_id = 2)
Почему s.category
ноль? Почему я получаю SQLException? Что-то не так с моими моделями? Я собираюсь в ассоциации один ко многим.