0
モデルのID、タイトルなどのプロパティでフィルタリングしているというクエリがモデルにあります。しかし、どのように私はすべての条件をor
にラップするのですか?disjunction
を調べましたが、値がある場合にのみ条件を追加する方法は見つかりませんでした。ebeanクエリで条件を追加する方法は?
Junction<Ticket> filters = Ebean.find(Ticket.class).where().disjunction();
if(filter.getId() != null){
filters.add(Expr.eq("id", filter.getId()));
}
return filters.endJunction().findList();
和がJuntionsの一覧をretursし、その後、私は値をチェックし、リスト上のExprを追加します。
Query<Ticket> query = Ebean.find(Ticket.class);
if(filter.getId() != null){
query.where().eq("id", filter.getId());
}
if(StringUtils.isNotBlank(filter.getTitle())){
query.where().icontains("title",filter.getTitle());
}
return query.findList();