我只想说一句,新建的列的默认值是摆设么,还得我重新编辑一下,在IOS端才能条件查询到
你好,新建列的默认值是有的。
如果是已建的列,设置默认值,就需要重新把,之前的旧数据再保存一遍。
不是打比方我新建了一列 title 默认值是 on,然后我在IOS段根据 [avQuery whereKey:@"title" equalTo:@"on"]查找数据是查找不到的,除非自己去后台表里把默认值手动改成 on 以后才能查询到数据
稍等,我测试一下。
确实是。这个是默认值的限制,因为 mongodb 本身是不支持默认值的,我们提供的默认值只是应用层面的增强,他对老数据只是在查询后做的一个『假象』。
这里有两个解决方案:
1.对老的数据做一次更新,用 key 不存在(whereDoesNotExist)查询出来,更新回去。
2.查询条件加上 or 查询,or key 不存在(whereDoesNotExist)。