Чем HasManyThrough отличается от MappedManyToMany? - PullRequest
1 голос
/ 09 марта 2011

Большая часть документации подъемного картографа о связях многие-ко-многим описывает использование MappedManyToMany для сопоставления взаимосвязи. Но в Exploring Lift я вижу, что авторы вместо этого используют HasManyThrough .

Какая разница между этими двумя? Один предпочтительнее другого?

1 Ответ

3 голосов
/ 10 марта 2011

HasManyThrough

  • только дает вам поддержку чтения
  • вам нужно будет позвонить get, чтобы получить элементы
  • вам нужно вручную создать записи в таблице соединений

MappedManyToMany

  • также обрабатывает записи
  • можно использовать как коллекцию (например, добавлять и удалять объекты с += и -=)
  • записи таблицы присоединения будут созданы автоматически

По крайней мере, это те различия, которые я заметил при переходе от HasManyThrough к MappedManyToMany в моем проекте.

Так что я думаю, MappedManyToMany - новая версия и является предпочтительной, в то время как HasManyThrough, вероятно, хранится по соображениям совместимости.

...