Как правильно моделировать город, регионы и почтовые индексы? - PullRequest
0 голосов
/ 28 июня 2011

Я думаю о «лучшем» способе моделирования города, региона, почтовых индексов для использования в разных странах. (Приложение должно использоваться на разных языках)

Мое первое предположение:

class City {
    String name
    String region
    static hasMany = [postcodes:PostCode]
    static belongsTo = [region:Region]
    static constraints = {
        name size:2..100
        region nullable:true
    }
}

Теперь вопросы:

  • Может ли один город принадлежать нескольким регионам? (Государства / Bundesländer / Сообщество /...)
  • Поскольку все это является окончательным, никаких новых городов, регионов или почтовых индексов я не думал о том, чтобы не использовать базу данных и поместить ее в перечисления!?
  • Поскольку я хочу разделить данные для разных стран, я должен добавить их в город. Я взглянул на multiTenant-плагин, но я не совсем уверен, если это не так много!?

Возможно, кто-то имел дело с этим раньше и может поделиться некоторыми идеями.

Большое спасибо Себастьян

1 Ответ

0 голосов
/ 28 июня 2011

Может ли один город принадлежать к нескольким регионам?(Штаты / Бундеслендер / Сообщества /...)

Это зависит от вас.Вы не указали явно, что такое регион.Регион может быть пригородом города или Западной Европы, в зависимости от того, как вы его определяете.Если регион не определен государственными границами, возможно, что город может принадлежать более чем одному региону.Например, «Париж» может содержаться в регионе «Франция», а также в регионе «Западная Европа».

Простым решением было бы ограничить регионы государственными границами, но это может быть не лучшим решением в зависимости от того, для чего вам нужны данные.Вы можете создать массив строк для хранения ваших регионов, но сложно выбрать альтернативу, если вы не скажете, для чего нужны данные.Исходя из того, что вы написали, я думаю, что отдельная «Строковая страна» была бы уместна, так как тогда вы можете сортировать по странам, и ваши регионы могут оставаться такими, как есть.

Поскольку все это является окончательным, нет новых городов, регионов или почтовых индексов, о которых я думал, что я не буду использовать базу данных и помещать ее в перечисления!, но гораздо проще управлять в БД.

Поскольку я хочу разделить данные для разных стран, я должен добавить их в город.Я взглянул на multiTenant-плагин, но я не совсем уверен, если это не слишком много!?

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

...