Я пытаюсь найти лучший способ управления моими контроллерами и моделями для конкретного варианта использования. .
Я разрабатываю систему отзывов, в которой Пользователь может создавать обзоры нескольких различных типов с полиморфным обзором.
Country (has_many reviews & cities)
Subdivision/State (optional, sometimes it doesnt exist, also reviewable, has_many cities)
City (has places & review)
Burrow (optional, also reviewable ex: Brooklyn)
Neighborhood (optional & reviewable, ex: williamsburg)
Place (belongs to city)
Я также хотел бы добавить больше сложности. Я также хочу время от времени включать подразделения... например, для США я мог бы добавить Техас или для Германии Баверию, и сделать так, чтобы их также можно было просматривать, но не в каждой стране есть регионы, и даже те, которые есть, никогда не будут рассмотрены. Так что это совсем не строго. Я хотел бы, чтобы он был максимально простым и гибким.
Было бы неплохо, если бы пользователь мог просто перейти в одну форму и выбрать город или страну, а затем детализировать данные, например, из Foursquare, чтобы найти конкретное место в городе и оставить отзыв.
Я действительно не уверен, какой маршрут мне выбрать? Например, что произойдет, если у меня есть Страна и Город... а потом я решу добавить Нору?
Могу ли я присвоить местам теги (например, Вильямсбург, Бруклин) own_to NY City, а теги принадлежат Нью-Йорку?
Теги стали более гибкими и необязательно объясняют, в каких областях они могут находиться, теги принадлежат городу, но также имеют места и могут быть просмотрены?
Так что я ищу предложения для тех, кто сделал что-то связанное.
Использование Rails 3.2 и mongoid.