2016-06-27 18 views
0

Ich habe eine groovy Klasse namens MdNote unter src Ordner in einer Grails-Anwendung. Ich habe auf eine andere Klasse verwiesen, da sie die Eigenschaft ReviewOfSystem hat. In dieser Klasse habe ich zwei Objekte. Wie kann ich diese zwei Objekteigenschaften im Controller binden, wenn ich mdNotes binde? Ich habe folgende Versuche. Kann mir bitte jemand bitte dabei helfen?wie man zwei Objekte in einer groovigen Klassenliste in Grails hinzufügt

MdNote >>

class MdNote { 
    String ... 
    String .... 
    List<ReviewOfSystem> reviewOfSystems  
    String .... 
} 

ReviewOfSystems

class ReviewOfSystem { 
    String btnLabel 
    String textValue 
} 

in Controller >>

List reviewOfSystems = Arrays.asList(params.reviewOfSystems.split("\\s*~\\s*")); 
List<ReviewOfSystem> rosList = null 
reviewOfSystems.each { 
      rosList.btnLabel = 'a' 
      rosList.textValue = 'b' 

     } 

in der Steuerung zeigt es diesen Tooltip :: kann Zeichenfolge nicht zuordnen Arraylist.

Kann mir bitte jemand helfen, mir die Werte zuzuordnen.

Antwort

1

Ich habe die Antwort bekommen.

List reviewOfSystems = Arrays.asList(params.reviewOfSystems.split("\\s*~\\s*")); 
    ArrayList<ReviewOfSystem> ros= new ArrayList<ReviewOfSystem>(); 
    reviewOfSystems.each { 
     String idxValue = it 
     ReviewOfSystem reviewOfSystem = new ReviewOfSystem(); 
     reviewOfSystem.btnLabel = idxValue.substring(0, idxValue.lastIndexOf("^")) 
     reviewOfSystem.textValue = idxValue.substring(idxValue.lastIndexOf("^") + 1) 
     ros.add(reviewOfSystem); 
    }