2012-03-23 47 views
1

我两个班这种方式设置:Ebean在播放2.0 - 没有加入对生成的查询

public class Listing extends Model { 
    @ManyToOne 
    @JoinColumn(name = "user_id", nullable = false) 
    public User user; 

    public String name; 
} 


public class User extends Model {  
    @Id 
    @Constraints.Required 
    @Formats.NonEmpty 
    public String username; 

    @OneToMany(mappedBy="user") 
    public List<Listing> listing; 
} 

的问题是,查询只返回特定用户的人数确实有它加入成为我会期待它,但有像这样的:

select t0.name 
from listing t0 
where t0.user_id = '[email protected]' 

任何想法我做错了什么?

回答

2

您需要定义连接的明确性以便从Listing表中获取元素。

在用户等级:

find.fetch("listing").findList(); 
+0

感谢朱利安!我在错误的字段中定义'@Id'的地方也犯了一个错误。应在公共Long ID上定义'@Id';而不是用户名。 – 2012-03-25 02:08:51