Кто-нибудь знает, почему я не могу получить доступ к user.idGroup
при сохранении?Когда я отправляю, значение idGroup
не передается.
в моем TCV (представление управления отслеживанием) user.name = значение но в user.idGroup = null
System.out.println("TCV->"+user.name+"\t"+user.idGroup);
Вот код:
Класс пользователя
package models;
import java.util.*;
import javax.persistence.*;
import play.data.validation.Required;
import play.db.jpa.*;
@Entity
public class User extends Model {
@Required
public String name;
@ManyToOne(cascade = CascadeType.ALL)
public Group idGroup;
public User(String name, Group idGroup) {
this.name = name;
this.idGroup=idGroup;
}
}
Группа классов
package models;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import play.data.validation.Required;
import play.db.jpa.Model;
@Entity
public class Group extends Model implements Comparable<Group> {
@Required
public String name;
public Group(String name) {
this.name = name;
}
@Override
public int compareTo(Group arg0) {
return name.compareTo(arg0.name);
}
}
HTML
#{jQueryValidate class:models.User.class, key:'user' /}
#{form id:'UserForm', action:@User.handleUserSubmit()}
#{field 'user.name'}
<div class="field">
<label for="${field.id}">Name : </label>
<input id="${field.id}" type="text" name="${field.name}" size="30" value="${field.value}" class="${field.errorClass}" />
<span class="error">${field.error}</span>
</div>
#{/field}
#{field 'user.idGroup'}
<input id="${field.id}" type="text" name="${field.name}" size="30" value="62" class="${field.errorClass}" />
#{/field}
<input type="hidden" id="control" type="text" name="control" size="3" value="addUser" >
<input type="submit" class="submit" value="Submit" value="addUser"> <a href="@{User.index()}"><span>Cancel</span>
#{/form}
Контроллер
public static void handleUserSubmit(@Valid User user, String control) {
System.out.println("TCD->"+suser.name+"\t"+user.idGroup);
if(control.contentEquals("adduser")){
if (validation.hasErrors()) {
List<Group> groups = listGroup();
render("@addUser", user, groups);
}
// Ok, save and display the created user
user.save();
flash.success("user added!!!!");
render(user, control);
}
if(control.contentEquals("updateUser")){
render();
}else{
render();
}
}