Учитывая следующую упрощенную ситуацию: у меня есть продукт, который может иметь несколько атрибутов, а значения атрибутов зависят от страны.
Когда я моделирую классы домена атрибутов стандартным образом, он выглядит так, как показано ниже,Это означает, что атрибут может иметь значения, которые зависят от страны, и значение может принадлежать различным атрибутам.Отношение n: m приводит к отдельной таблице соединений.
class Attribute {
String id
String name
static hasMany = [attributeValues: AttributeValue]
static mapping = {
attributeValues joinTable: [name: 'attribute_values', key: 'attribute_id']
}
}
class AttributeValue {
String id
Locale language
String value
}
Вопрос теперь в том, есть ли способ смоделировать это в GORM без таблицы соединений?
При использовании нативного SQLне проблемаВ базе данных это приведет к структуре, как показано ниже.Соединение должно идти от столбца attribute.attribute_key к столбцу attribute_value.attribute_key