Java play framework scala获取连接表属性
我正在使用Ebean的Play框架。我有两种型号,下面是代码:Java play framework scala获取连接表属性,java,scala,playframework,ebean,Java,Scala,Playframework,Ebean,我正在使用Ebean的Play框架。我有两种型号,下面是代码: public class User extends Model { @Id public Long id; public String name; /* rest of attributes */ public static Finder<Long,User> find = new Finder<Long,User>( Long.class, U
public class User extends Model {
@Id
public Long id;
public String name;
/* rest of attributes */
public static Finder<Long,User> find = new Finder<Long,User>(
Long.class, User.class
);
}
public class Admin extends Model {
@Id
public Long id;
@OneToOne
public User user;
/* rest of attributes */
public static Finder<Long,Admin> find = new Finder<Long,Admin>(
Long.class, Admin.class
);
}
公共类用户扩展模型{
@身份证
公共长id;
公共字符串名称;
/*其余属性*/
公共静态查找器find=新查找器(
Long.class,User.class
);
}
公共类管理扩展模型{
@身份证
公共长id;
@奥内托内
公共用户;
/*其余属性*/
公共静态查找器find=新查找器(
Long.class,Admin.class
);
}
在Java中执行Logger.info(admin.user.name)
时,我可以看到管理员的名称。但是,当我使用view render将Java对象传递给Scala时,如果我执行@admin.user.id
,我仍然可以获得id,但是如果执行@admin.user.name
,我什么也得不到(没有错误)。我只是想知道如何从联接表访问name属性?问题已解决。
在我做抓取之前,我是这样做的
Admin.find.where()
.ilike("user.name", "%" + filter + "%")
.orderBy("user."+sortBy + " " + order)
.findPagingList(pageSize)
.getPage(page);
改为
Admin.find.fetch("user", new FetchConfig().query())
.where()
.ilike("user.name", "%" + filter + "%")
.orderBy("user."+sortBy + " " + order)
.findPagingList(pageSize)
.getPage(page);
它成功地在Scala上显示了实例变量 问题解决了。
在我做抓取之前,我是这样做的
Admin.find.where()
.ilike("user.name", "%" + filter + "%")
.orderBy("user."+sortBy + " " + order)
.findPagingList(pageSize)
.getPage(page);
改为
Admin.find.fetch("user", new FetchConfig().query())
.where()
.ilike("user.name", "%" + filter + "%")
.orderBy("user."+sortBy + " " + order)
.findPagingList(pageSize)
.getPage(page);
它成功地在Scala上显示了实例变量 我尝试了这个方法,但是没有用。我获取用户实例没有问题,但是当我尝试访问用户的变量(id除外)时,它不会返回任何内容。我尝试了这个方法,但它没有帮助。获取用户实例没有问题,但当我尝试访问用户变量(除id外)时,它不会返回任何内容