Сведения о вопросе

Sadijon

12:12, 27th August, 2020

Теги

Ruby   on   Rails    

Rails. ActiveRecord. Ассоциации?

Просмотров: 302   Ответов: 1

Есть таблица Images. Как правильно сделать ассоциацию Images к самой себе, используя миграции? Как правильно назвать дополнительную связывающую таблицу? Что прописать в модели Image?



  Сведения об ответе

COOL

04:12, 15th August, 2020

Всё, теперь понял.

Создаешь таблицу image_diff (например).

поля: image_id, second_image_id, percent

Class ImageDiff:
belongs_to :image
belongs_to :second_image, :class_name => «Image», :foreign_key => «second_image_id»

Class Image:
has_one :image_diff # связь один-к-одному, потому что first_image_id привязывается к модели Image

и можно будет обращаться:
im = Image.first

im.image_diff.percent
im.image_diff.second_image # тут он выведет все связи, поэтому нужно будет их перебирать по одному


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться