Скажем, например, у меня есть заказ и статус.Как управлять ассоциациями состояний в рельсах
Статус:
- status_id: 1, status_name: Open
- status_id: 2, status_name: Закрытое
Заказ:
- заказ #: 1, status_id: 1
Как управлять ассоциацией в Ruby on Rails?
Будет ли следующий код лучшим выбором?
class Status < ActiveRecord::Base
has_many :orders
end
class Order < ActiveRecord::Base
belongs_to :status
end
Довольно просто, да ваш код правильно. Только комментарий состоит в том, чтобы убедиться, что столбец идентификатора таблицы состояния называется 'id', а не' status_id' - рельсы будут считать первое. – Matt
Согласен, @Matt. проблема в том, что статус на самом деле не имеет большого количества заказов, и порядок действительно не принадлежит статусу, но если это лучший способ. – David
Я не понимаю - почему вы чувствуете, что у этого статуса нет много заказов? Можете ли вы иметь более одного заказа одновременно, которые являются «открытыми»? Если это так, статус «Открыть» имеет много порядков, принадлежащих ему. Что заставляет вас чувствовать себя иначе? – Matt