1

Я хочу, чтобы получить значение:Rail4 - Как многоуровневые ассоциации?

New ->Type ->Version

У меня есть эта установка:

class New < ActiveRecord::Base 
    has_one :type 
end 

class Type < ActiveRecord::Base 
    belongs_to :new 
    has_many :versions 
end 

class Version < ActiveRecord::Base 
    belongs_to :type 
end 

Как я могу получить доступ @new.type.version.first?

Спасибо!

+0

нужно учитывать, что 'new' является рубин зарезервированное слово и' type' является Рельсы зарезервированные слова для STI. ваш заголовок в неприятности с таким наименованием ... – charlysisto

+0

На самом деле я не использую эти имена в проекте, его просто, например, –

ответ

2

Try:

class New < ActiveRecord::Base 
    has_many :versions, through: :type 
    ... 
end 

@ new.versions.first

+1

Из-за has_many вы можете просто сделать '@ new.versions.first' –

+0

Да - исправлено спасибо –

+0

Но форма версии является формой field_for внутри типа, тогда, когда я создам регистр с новой формой, я выбираю тип, у которого уже есть связанная версия. –

Смежные вопросы