使用以下请求参数调用收到的Grails Controller :
defaultPrice[0].amount 22
defaultPrice[0].currency 1
defaultPrice[0].id
defaultPrice[1].amount 33
defaultPrice[1].currency 3
defaultPrice[1].id
我定义了以下命令类:
class PriceCommand {
BigDecimal amount
Integer currency
Integer id
}
我尝试在操作中将请求参数绑定(bind)到“列表”
def save = {List<PriceCommand> defaultPrice ->
}
但在操作中,
defaultPrice
为null。 最佳答案
它需要一个带有现有数据列表且具有指定名称的命令,该命令将使用请求中的数据填充。
尝试
import org.apache.commons.collections.ListUtils
import org.apache.commons.collections.Factory
class PriceListCommand {
List<PriceCommand> defaultPrice = ListUtils.lazyList([], {new PriceCommand()} as Factory)
}
并在 Controller 内使用此命令。应该可以