类型验证
MongoDB for IntelliJ 插件目前处于私有预览阶段。
定义
MongoDB for IntelliJ 插件检查查询中的文档字段,确保数据类型匹配。示例,如果您在等值比较、插入或更新操作中使用 String
字段,则该插件会检查字段值以确保类型也是 String
。
如果值类型无效,该插件会显示警告,指示无法分配该类型。
要解决警告问题,请更改字段值以匹配预期类型。如果字段为动态类型且未应用严格的类型规则,则可以忽略无效类型警告。
例子
在以下示例Java代码片段中,trip_status
字段类型为 String
,但 Filters
操作尝试与 Integer
值 1324324
执行相等比较:
public List<Document> findCompletedTripsByDriver( String driverId ) { return trips.find( Filters.and( Filters.eq( fieldName: "trip_status", value: 1324324 ) Filters.eq( fieldName: "driver_id", driverId ) )).into( new ArrayList<> () ); }
由于MongoDB文档中的 value
是 Integer
,但 trip_status
是 String
,因此该插件会显示有关无效类型的警告:
"Integer" (type of provided value) can not be assigned to "String"
(type of "trip_status")
要解决无效类型问题,请将值更改为 String
。示例:"start"
。