And*_*ega 4 java android foreign-keys ormlite
这是我的问题:我有不同的实体链接到其他人,直到嵌套深度为3.我在每个对象中的所有外来字段都注明了
@DatabaseField(foreign = true, foreignAutoRefresh = true)
Run Code Online (Sandbox Code Playgroud)
但是只有嵌套深度为2才能获得实际的autoRefreshed异物.
例如,如果我查询A实体然后我这样做:
A.getB().getC().getD()
Run Code Online (Sandbox Code Playgroud)
对于实体B和CI已经具有所有字段,而对于实体DI仅具有获取的ID,并且我需要调用dao.refresh()方法以获取所有D字段.这是一个限制吗?我在文档上找不到任何相关内容.
编辑:
因此,在创建了一些更好的单元测试并进行了更多调查后,结果证明这是一个错误. ORMLite错误地处理maxForeignAutoRefreshLevel
了@DatabaseField
注释中的设置.现在(因为你似乎已经想通了,看着你的答案),你需要添加foreignAutoRefresh = true
和maxForeignAutoRefreshLevel = 3
到C
在你的领域B
对象和D
领域的C
对象也是如此.那应该解决它.
我创建了以下错误报告:
https://sourceforge.net/tracker/?func=detail&aid=3530801&group_id=297653&atid=1255989
我已经修复了trunk中的问题,并且我已经开始推出4.41版本.自上次发布以来已经有一段时间了,这是一个很好的时间.
归档时间: |
|
查看次数: |
3426 次 |
最近记录: |