1

私はプレイを使用しています!フレームワーク、バージョン1。日、月、年の3つの異なる選択要素を持つフォームがあります。これらをユーザーの生年月日にバインドしたい (User クラスで定義された public DatebirthDate)。これどうやってするの?ありがとう。

4

2 に答える 2

0

クラスで日、月、年の 3 つのセッター getter を作成し、これらの値で日付を更新できます。これを行う最善の方法は、joda 日付クラスを使用することです

public class MyClass {
    public DateMidnight birthDate;

    public int getBirthDateYear() {
        return birthDate.getYear();
    }
    public void setBirthDateYear(int year) {
        birthDate = birthDate.withYear(year);
    }
}

「monthOfYear」と「dayOfMonth」でも同じことが言えます

于 2012-10-08T05:50:30.973 に答える
0

モデル内の何かにこだわる価値はないと思います。play はこれをすべてコントローラーで行うことができます。これはちょっとしたロジックですが、小規模なアプリでは大したことではありません。選択ボックスがコントローラーの POST 番号であり、名前で適切にマップされた他のユーザーのものをユーザープロパティに送信すると仮定します。

public static void save(User user, String day, String month, String year) {
    DateFormat formatter = new SimpleDateFormat("MMddyy");
    Date birthDate = formatter.parse(month + day + year);
    user.birthDate = birthDate;
    user.save();
}
于 2012-10-10T01:24:08.143 に答える