Grails GORM доменное отношение класса для сохранения - PullRequest
0 голосов
/ 07 июня 2018

ниже структурирован класс домена

class User {
   String username
   String password
   String emailAddress
   static hasMany = [memberships: Membership]
}

class Membership {
   String name
   Integer memberPlanId
   static belongsTo = [user: User]
}

//MemberPlan data have 2 types of plan existed in DB
class MemberPlan {
   String type
   Float amount
}

Я хочу, чтобы 'memberPlanId' членства ссылался на MemberPlan.Как мне установить оттуда, он должен быть под принадлежит?И как проходит запрос сохранения для этого свойства memberPlanId?

new User(username: 'input_username', password: 'input_password', emailAddress: 'input_emailAddress')
  .addToMemberShips(new Membership(name: 'input_name', memberPlanId: ?))
  .save()

1 Ответ

0 голосов
/ 08 июня 2018

Вы хотели бы отредактировать домен участника следующим образом

class Membership {
   String name
   MemberPLan memberPlan                 // this is basically a belongsTo relation
   static belongsTo = [user: User]
}

Чтобы сохранить нового пользователя, вы можете использовать

new User(username: 'input_username', password: 'input_password', emailAddress: 'input_emailAddress')
  .addToMemberShips(new Membership(name: 'input_name', memberPlan: MemberPlan.get(1)))
  .save()

MemberPlan.get (1) будет извлекать запись избаза данных с id = 1

Надеюсь, что поможет

...