Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 18th, 2012  |  syntax: None  |  size: 1.17 KB  |  hits: 8  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. How to save associated object in Grails?
  2. class Employee {
  3.         String name
  4.         String department
  5.     static constraints = {
  6.     }
  7.     public String toString() {
  8.         name
  9.     }
  10. }
  11.  
  12.  
  13.  
  14. class Address {
  15.     String line1
  16.     String line2
  17.     Employee employee
  18.  
  19.     static belongsTo = Employee
  20.  
  21.     static constraints = {
  22.     }
  23. }
  24.        
  25. def save = {
  26.     def employeeInstance = new Employee(params)
  27.     def addressInstance = new Address(params)
  28.     if (employeeInstance.save(flush: true)) {
  29.         flash.message = "${message(code: 'default.created.message', args: [message(code: 'employee.label', default: 'Employee'), employeeInstance.id])}"
  30.         redirect(action: "show", id: employeeInstance.id)
  31.     }
  32.     else {
  33.         render(view: "create", model: [employeeInstance: employeeInstance])
  34.     }
  35. }
  36.        
  37. class Employee {
  38.     String name
  39.     String department
  40.     Address address
  41.  
  42.     public String toString() {
  43.         name
  44.     }
  45. }
  46.        
  47. class Address {
  48.     String line1
  49.     String line2
  50.  
  51.     static belongsTo = [employee: Employee]
  52. }
  53.        
  54. def employeeInstance = new Employee(params)
  55. employeeInstance.address = new Address(params)
  56. if (employeeInstance.save(flush: true)) {
  57.     // your logic
  58. }