类型验证
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<> () ); }
因为 value
是一个 Integer
,而 MongoDB 文档中的 trip_status
是一个 String
,插件会显示有关无效类型的警告
"Integer"(提供值的类型)不能分配给 "String"("trip_status" 的类型)
要解决无效类型,请将值更改为 String
。例如:"start"
。