rails 4 Когда требуется "inverse_of"?

Я разрабатываю веб-приложение с использованием rails 4 впервые. Я делаю все свои ассоциации моделей двунаправленными и использую inverse_of везде, где это разрешено.

Из прочтения документации у меня сложилось впечатление, что это, вероятно, лучшая практика, но это никогда не было четко прописано где-либо.

Буду признателен за любые общие советы в этом отношении от опытных разработчиков рельсов. Я надеюсь, что вопрос не слишком расплывчат, чтобы иметь значение здесь.

Спасибо!

Обновление: в дополнение к нестандартным именам, существует два основных дополнительных случая, когда требуется явная установка inverse_of:

  1. для INVALID_AUTOMATIC_INVERSE_OPTIONS ( http://www.rubydoc.info/docs/rails/ActiveRecord/Reflection/AssociationReflection)
  2. если вы принимаете вложенные атрибуты - это потому, что родительский объект еще не сохранен и, следовательно, не имеет идентификатора. См. http://viget.com/extend/exploring-the-inverse-of-option-on-rails-model-associations

1 ответ

Решение

Обычно желательно установить обратные настройки. Хорошей новостью является то, что в большинстве случаев это выполняется автоматически. Обычно вам нужно только явно установить обратное для ассоциаций с нестандартными именами. Вы можете узнать намного больше в официальной документации.

Другие вопросы по тегам