number, "start" -> n-6ren">
gpt4 book ai didi

javascript - Play Framework - 表单不绑定(bind)到嵌套元组

转载 作者:行者123 更新时间:2023-11-29 18:11:29 24 4
gpt4 key购买 nike

我已经创建了一个表单来绑定(bind)到数据表请求:

val datatableForm = Form(
tuple(
"draw" -> number,
"start" -> number,
"length" -> number,
"search" -> tuple(
"value" -> text,
"regex" -> boolean
),
"columns" -> seq(tuple(
"data" -> number,
"name" -> text,
"orderable" -> boolean,
"search" -> tuple(
"value" -> text,
"regex" -> boolean
)
)
),
"order" -> seq(tuple(
"column" -> number,
"dir" -> text
)
)
)
)

在我的请求中,我调用了 val form = datatableForm.bindFromRequest。这对 drawstartlength 变量非常有用,但对 searchcolumnsorder 变量。例如,当我不使用嵌套元组时,我可以调用 datatableForm.bindFromRequest.get,它会返回一个 Some 对象,但是当我添加嵌套元组并调用 get,它返回一个None对象。

从数据表 javascript 对象发送的数据是:

{
"draw": 1,
"columns": [
{
"data": 0,
"name": "",
"searchable": true,
"orderable": true,
"search": {
"value": "",
"regex": false
}
},
{
"data": 1,
"name": "",
"searchable": true,
"orderable": true,
"search": {
"value": "",
"regex": false
}
}
],
"order": [
{
"column": 0,
"dir": "asc"
}
],
"start": 0,
"length": 10,
"search": {
"value": "",
"regex": false
}
}

这是请求正文中的数据:

Map(draw -> ArrayBuffer(1), columns[0][data] -> ArrayBuffer(0), columns[0][name] -> ArrayBuffer(), columns[0][searchable] -> ArrayBuffer(true), columns[0][orderable] -> ArrayBuffer(true), columns[0][search][value] -> ArrayBuffer(), columns[0][search][regex] -> ArrayBuffer(false), columns[1][data] -> ArrayBuffer(1), columns[1][name] -> ArrayBuffer(), columns[1][searchable] -> ArrayBuffer(true), columns[1][orderable] -> ArrayBuffer(true), columns[1][search][value] -> ArrayBuffer(), columns[1][search][regex] -> ArrayBuffer(false), order[0][column] -> ArrayBuffer(0), order[0][dir] -> ArrayBuffer(asc), start -> ArrayBuffer(0), length -> ArrayBuffer(10), search[value] -> ArrayBuffer(), search[regex] -> ArrayBuffer(false))

如何让表单绑定(bind)到嵌套元组?

最佳答案

我看到了同样的错误。问题是请求没有作为 json 发送。确保将 contentType 设置为 json

如果您使用的是 jQuery,文档位于 here关于如何做到这一点。

本质上是这样的:

$.ajax({
type: "POST",
url: youUrl,
data : data,
contentType: "application/json"
});

关于javascript - Play Framework - 表单不绑定(bind)到嵌套元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27001371/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com