Grails条件重复关联路径错误
我试图在一个标准中使用别名和正常的关联名,这个标准给了我“重复的关联路径错误”。我的类如下Grails条件重复关联路径错误,grails,duplicates,associations,criteria,Grails,Duplicates,Associations,Criteria,我试图在一个标准中使用别名和正常的关联名,这个标准给了我“重复的关联路径错误”。我的类如下 class FlightReservation{ Flight flight User usr String title } class Flight { String flightNumber Category category } class Category { String name } 条件查询 FlightReservation.c
class FlightReservation{
Flight flight
User usr
String title
}
class Flight {
String flightNumber
Category category
}
class Category {
String name
}
条件查询
FlightReservation.createCriteria().list(){
createAlias("flight", "flt", CriteriaSpecification.LEFT_JOIN)
flight{
location{
eq("name", "abc")
}
}
order("flt.flightNumber", "asc")
}
现在我想起来了,这似乎很明显,也许是冬眠的限制
所以我想知道是否有另一种方法来实现这一点
我知道我可以使用fetchMode加载航班关联
但是从查询中删除别名会给order子句带来困难(这将是动态的,嵌套闭包会让事情变得丑陋)
有人可能会说,为什么我不能在这两个地方都使用“flt”(别名)?实际上,使用嵌套闭包而不是别名的其他标准来自代码的其他部分,我应该重用这些代码
让我知道,如果问题不够清楚,任何关于这个错误的见解都会非常有用。我也有同样的错误,我不清楚为什么会发生这种情况。你能在你的问题中细化它吗?你在使用别名吗?在我的例子中,我为“flight”(>“flt”)字段创建了一个别名,同时我试图用字段名(即“flight”)而不是别名“flt”形成一个标准。我想如果您创建了别名,hibernate不允许您使用原始字段名。虫子在冬眠,