タイプ検証
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"
。