Имя свойства Ebean для класса в запросе SQL, чтобы избежать неоднозначного столбца - PullRequest
0 голосов
/ 02 сентября 2018

У меня есть два класса, и я пишу запрос Ebean здесь:

@Entity
public class User extends Model {
@Id
@Column(name = "user_index")
private int id;

@Column(name = "user_first_name")
private String firstName;

[...]

@OneToMany(mappedBy = "book_owner_index")
private List<Book> books;

@Column(name = "crated_date")
private Long cratedDate;

}

и

@Entity
public class Book extends Model {
@Id
@Column(name = "book_index")
private int id;

@Column(name = "book_name")
private String name;

@Column(name = "book_condition")
private String condition;

@Column(name = "crated_date")
private Long cratedDate;


}
List<User> users = User.find.select("*")
                        .fetch("books")
                        .where()
                        .eq("crated_date", "some")
                        .findList();

Я получаю ошибку crated_date is ambiguous column:

List<User> users = User.find.select("*")
                        .fetch("books")
                        .where()
                        .eq("User.crated_date", "some")
                        .findList();

и выше запрос не работает для меня, говоря Unknown column User.crated_date.

Это работает, когда я пишу t0.crated_date - это просто взлом, кто-нибудь может предложить мне правильный способ написать это?

Это работает, когда я пишу запрос для класса Book (записывая objectName.propertyName - book.crated_date), но не для класса User - почему так?

...