这似乎是一个非常基本的问题,但我有一个模型(用户),我想存储一个字符串数组列表(它们是其他用户的 id)。我这样声明列表:
public List<String> friends = new ArrayList<String>();
在向数组添加条目后,我保存了用户。但是当我尝试使用它时,朋友总是为空。是否有特定的方法来保存 ArrayList?任何帮助,将不胜感激。
我的模型:
@Entity
public class User extends Model {
@Id
public String username;
public String password;
public List<String> friends = new ArrayList<String>();
public static Finder<String, User> find = new Finder<String, User>(String.class, User.class);
// Constructor
public User(String username, String password){
this.username = username;
this.password = password;
}
// Methods
public void addFriend(String friend){
friends.add(friend);
}
// Static Methods
public static User authenticate(String username, String password){
return find.where().eq("username", username).eq("password", password).findUnique();
}
public static void befriend(String user1, String user2){
User.find.ref(user1).addFriend(user2));
User.find.ref(user2).addFriend(user1);
User.find.ref(user1).save();
User.find.ref(user2).save();
}
}
控制器方法:
return ok(index.render(
User.find.byId(request().username()).friends,
));
还有一个非常简单的观点:
@(friends: List[User])
<div id="current_friends">
@for(friend <- friends) {
@friend.username
}
</div>