Это продолжение этого вопроса.
У меня есть класс Address
, который содержит основную информацию об адресе улицы.У меня также есть класс User
, который имеет атрибуты physicalAddress
, mailingAddress
, cargoDestinations
и cargoSources
.Класс User
выглядит примерно так:
class User {
String username
String password
String firstName
String lastName
String businessName
String phoneNumber
Address physicalAddress
Address mailingAddress
static hasMany = [accounts:Account, cargoSources:Address, cargoDestinations:Address, cargoes:Cargo, loadsLogged:Load, loadsDelivered:Load]
Set accounts, cargoSources, cargoDestinations, cargoes
static mappedBy = [loadsLogged:"loggedBy", loadsDelivered:"deliveredBy"]
//some other stuff after this
А класс Address
выглядит примерно так:
class Address {
static belongsTo = [user:User]
String streetAddress
String city
String state
String zip
BigDecimal taxRate
//some other stuff after this
Я следовал учебному пособию здесь по большей части.На шаге 5 мой шаблон выглядит следующим образом:
<g:select
from="${account.user.cargoDestinations}"
name="cargoDestinations" value="">
</g:select>
Проблема в том, что вместо возврата только cargoDestinations
шаблон возвращает ВСЕ адреса, связанные с этим пользователем.Если я изменю from="${account.user.cargoDestinations}"
на from="${account.user.physicalAddress}"
или from="${account.user.mailingAddress}"
, я получу ожидаемый результат, поэтому я знаю, что моя проблема как-то связана с отображением переменной cargoDestinations
.Как я могу исправить это, не слишком меняя файлы классов?