2013-06-25 21 views
6

Wykonuję żądanie AJAX od mt front-end z tablicą jako parametrem. Przykład tablicy:Parametry kontrolera Groovy Grails

arr = [13, 56, 43] 

Kiedy kontroler Grails wydrukować params uzyskać arr[]:[13, 56, 43]. Jednak w przypadku macierzy front-end składa się tylko z jednego elementu (na przykład arr = [25]), to w kontrolerze otrzymuję arr[]:32. Jednak potrzebny jest ten parametr, na przykład arr[]:[32]. Jak mogę to zrobić?

+0

Ten rade 'Lista myparam = params.list ('myParams')' zamiast pytać jeśli param jest instancją listy lub nie. – IgniteCoders

Odpowiedz

8

w kontrolerze można użyć

params.list('arr[]') 

To zawsze zwróci listę, zero, jeden lub więcej niż jeden element, w przeciwieństwie do podstawowej

params.'arr[]' 

co daje null jeśli istnieje nie są wartościami parametrów arr[], pojedynczą wartością, jeśli istnieje, i listą, jeśli jest ich więcej.

0

Myślę W regulatorze można użyć

List arr = [] 

arr = params.list 

lub

def arr 
arr = params.list as List