2013-06-25 12 views
6

Ich mache eine AJAX-Anfrage von mt-Front-End mit Array als Parameter. Beispiel des Arrays:Groovy Grails Handle Controller-Parameter

arr = [13, 56, 43] 

Wenn in Grails Controller ich params drucke ich arr[]:[13, 56, 43] bekommen. Wenn jedoch im Front-End-Array nur ein Element besteht (arr = [25], zum Beispiel), dann bekomme ich im Controller arr[]:32. Ich brauche jedoch den Parameter, um die Liste zu sein, wie arr[]:[32]. Wie kann ich das machen?

+0

Dies tun den Trick 'Liste myParam = params.list ('myParams')' statt zu fragen, ob der param verwenden können ist Instanz der Liste oder nicht. – IgniteCoders

Antwort

8

In der Steuerung können Sie

verwenden
params.list('arr[]') 

Dadurch wird eine Liste immer wieder zurückkehren, mit null, ein oder mehr als ein Element, im Gegensatz zu den Grund

params.'arr[]' 

, die Sie null wenn es gibt sind keine arr[] Parameterwerte, der einzelne Wert, wenn es einen gibt, und eine Liste, wenn es mehr als einen gibt.

0

Ich denke, in der Steuerung Sie

List arr = [] 

arr = params.list 

oder

def arr 
arr = params.list as List 
Verwandte Themen