0

承認ボタンと拒否ボタンのあるフォームがあります。ユーザーが承認ボタンを押すと、データベースで承認された値に値 true が含まれるようにします。ユーザーが拒否を押した場合、データベースで受け入れられた値に false の値が含まれるようにします。以下のコードは機能しません。これを適切に機能させる方法について何か提案はありますか?

public static void acceptOrRejectResponseForm(Long id,String accept,String reject) {

      Response responseForm = Response.findById(id);

      if(accept != null && !accept.isEmpty()){
          responseForm.accepted = true;
      }
      else if(reject != null && !reject.isEmpty()){
          responseForm.accepted = false;
      }
      accepted.save();
}

これは私のhtmlです

<form action="@Admin.acceptOrRejectResponseForm(response.id)" method="GET">                      
   <input type="submit" value="accept"  name="accept">
   <input type="submit" value="reject"  name="reject">

4

1 に答える 1

0

2つの送信ボタンを作成しないでください。

デフォルト値0で2つの非表示フィールドを作成します。呼び出し名はacceptおよびrejectします。onclickアクションで2つのボタンを作成するより。onclickアクションでacceptボタンをクリックすると、非表示フィールドacceptを1に設定し、rejectを0に設定します。rejectボタンをクリックすると、非表示のacceptフィールドを0に設定し、rejectを1に設定します。jsでフォームを送信するよりも。コードでこれらの2つのフィールドを取得し、魔女1が1に設定され、魔女1が0に設定されていることを確認します。これにより、dbで設定できます。

于 2012-04-24T06:56:10.807 に答える