2016-04-28 14 views
0

Was ich java play2 Form validieren müssen, ist Feldfehler zu erhalten, wenn i vaccant Feld in meiner Form haben, wenn Telefonnummer nicht gültig ist, wenn die Option Standardwert ist und wenn der Betrag weniger als 100 beträgt. Ihre Hilfe wird geschätzt.Wie ohne Helfer in html scala Vorlage

Mein home.scala.html:

@(customerForm: Form[Users]) 

             @main("sending..") { 

            <form action="@routes.Application.send()" method="post"> 


              <div class="form-group row "> 
               <label class="col-sm-2 form-control-label">Phone Number</label> 
               <div class="col-sm-10"> 
                <input 
                name="phoneNumber" 
                id="lastName" 

                class="form-control" 
                type="text" 
                placeholder="Phone Number"> 
               </div> 
              </div> 


               <div class="form-group row "> 
                <label class="col-sm-2 form-control-label">First Name</label> 
                <div class="col-sm-10"> 
                 <input 
                 name="firstName" 
                 id="firstName" 

                 class="form-control" 
                 type="text" 
                 placeholder="First Name"> 
                </div> 
                </div> 



               <div class="form-group row"> 

                <label class="col-sm-2 form-control-label">User</label> 
                <div class="col-sm-10"> 

                 <select class="form-control" 
                 name="client" 
                 id="client" 
                 value="client" 
                 > 
                  <option value="select">select ..</option> 
                  <option value="admin">admin</option> 
                  <option value="supervisor">supervisor</option> 
                  <option value="enduser">enduser</option> 
                 </select> 

                </div> 
               </div> 


               <div class="form-group row "> 
                <label class="col-sm-2 form-control-label">Amount</label> 
                <div class="col-sm-10"> 
                 <input 
                 name="amount" 
                 id="" 
                 value="@customerForm("amount").value" 
                 class="form-control" 
                 type="number" 
                 placeholder="Rwfr"> 
                </div> 
               </div> 
              </form> 
              } 

I Modelle wollen so sein herbenation:

@Entity 
@Table(name = "Users") 
public class Users extends Model { 

@Id 
public Long id; 

@Required 
@Constraints.Pattern(value = "[0-9.+]+", message = "A valid phone number is required") 
public String phoneNumber; 

@Min(5) 
@Required 
public String firstName; 


@Required 
public String client ; 

@Min(100) 
@Required 
public int amount ; 

} 

Meine ctroller Methode ist die fo llowing:

public static Result send() { 


    Form<Users> formData_one = Form.form(Users.class).bindFromRequest(); 

    if (formData_one.hasErrors()) { 
     flash("error", " Please fill vaccant field ..."); 

      } 
    else{ 

     } 
     } 
+0

Verwenden JS oder HTML5 Eingang Validierungen. Was ist das Problem? – MipH

+0

@MipH, Das Problem ist, dass Benutzer die clientseitige Validierung ausschalten können? –

+1

[Dies könnte hilfreich sein] (http://stackoverflow.com/questions/14293662/display-error-in-play-framework-2) –

Antwort

0

Verwendung so etwas wie dieses

@if(userForm.hasErrors) { 
     <div class="alert alert-danger" role="alert"> 
     @for(error <- userForm.errors()) { 
      <p>Error: @error._2.stream().findFirst().get().message()</p> 
     } 
     </div> 
    }