Учебник по созданию представлений для ассоциаций ActiveRecord?

При обучении студентов Rails я часто прихожу к тому, что они создали две модели и создали ассоциацию и задаются вопросом, как они могут сделать эту ассоциацию видимой в представлениях.

Теперь мой вопрос, есть ли обзорные статьи / учебные пособия / сообщения в блоге для этого,

которые дают обзор различных способов отображения ассоциаций в представлениях. Например, я вижу несколько "шаблонов ассоциации", то есть

  • Ассоциация 1:n может быть Агрегацией или Композицией, как описано в UML, с различными последствиями для создания связанных объектов (которые могут указывать на вложенные ресурсы, обсуждаемые только с точки зрения маршрутизации).
  • ... или что-то вроде принадлежности к категории и т. д., где вы хотите выбрать один из существующих вариантов или создать новый, если нужный объект не найден; который обрабатывается first_or_create, но, опять же, я не видел никакой документации, обобщающей различные варианты для этого представления (как, например, описывают RailsCast #57 и 258).

Я пытался найти его. Кроме того, ни в учебнике Майкла Хартла, ни в PragProgs "Гибкая веб-разработка с Rails" такого нет.

Итак, есть ли что-то там, и если нет, думают ли люди, что было бы полезно создать это?

4 ответа

Для более подробного и беспристрастного обсуждения представления графов объектов в представлениях посмотрите обсуждение Авди Гриммом того, что он называет шаблоном Exhibit:

http://objectsonrails.com/#ID-2656c30c-080a-4a4e-a53e-4fbaad39c262

Здесь есть отличные примеры и хорошее обсуждение того, где и почему может быть хорошим решением не следовать чистому пути, если ваши студенты заинтересованы в том, чтобы выйти за рамки API.

Я написал драгоценный камень для создания вложенных форм (кокон) и задокументировал, как решать все типы вложенных форм в вики этого драгоценного камня. См. https://github.com/nathanvda/cocoon/wiki/A-guide-to-doing-nested-model-forms

Надеюсь это поможет.

Некоторые Railscasts:

Вы могли бы хотеть, чтобы они проверили драгоценный камень Драпировщика. Имеет отличную документацию и скринкасты:

https://github.com/jcasimir/draper

Это может быть не совсем то, что вы ищете, но это научит их шаблонам декоратора.

Надеюсь, это поможет!

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