gpt4 book ai didi

java - Play 框架中作为表单输入的对象

转载 作者:行者123 更新时间:2023-12-02 07:08:26 24 4
gpt4 key购买 nike

Play框架的模型和形式的所有示例(我使用2.0.4)都使用StringintLong作为属性.

但是我有一个这样的模型:

public class MyModel {

@Required
public String name;

@Required
public Date birthdate;

@Required
public MyClass someObject;
}

现在对于name,我可以简单地在表单中使用@inputText(...) 字段。

对于birthDate,我尝试在表单中使用@inputDate(...)字段,但这只是给了我一个输入字段以及我想要的任何格式的日期尝试在输入字段中输入内容,但被拒绝。我还尝试将 'format -> "dd/mm/yyyy" 传递到此字段,但没有成功。

我什至不知道如何为表单输入 MyClass 对象。

  1. 如何使 @inputDate() 正常工作?
  2. 是否有必要做每个输入一个 String/Int/Long 并在 Controller 中接收到这些值后构造它们的 MyClass 对象?

最佳答案

回答问题 (1)。

您可以考虑这种技术。该模型可能如下所示:

@Required
@Formats.DateTime(pattern="dd/MM/yyyy")
public Date birthdate;

因此,您可以使您的 View 变得简单:

@helper.inputDate(myForm("birthdate"), '_label -> "Birthdate", '_help -> "format dd/MM/yyy")

回答问题 (2)。

据我所知,必须以 String 的形式从 HTML 表单提交值。 , Int , Long 。因为它们是在屏幕上显示信息的通用格式。此外,HTML 输入值以String 表示。 , 'Int', 'Long' 类型。

<小时/>

仅供引用,有一个有用的示例,例如 computer-database您可以学习连接到其他类的模型。它位于<PlayFrameworkInstallDirectory>/samples/java/computer-database .

关于java - Play 框架中作为表单输入的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15834507/

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