Mongo.Ecto.Helpers
Defines helpers to ease working with MongoDB in models or other places where you work with them. You’d probably want to import it.
Summary
Functions
Allows updating only a fragment of a nested document inside an array
Allows updating only a fragment of a nested document
Allows using inline JavaScript in queries in where clauses and inserting it as a value to the database
Creates proper regex object that can be passed to the database
Functions
Specs
change_array(pos_integer, String.t, term) :: Mongo.Ecto.ChangeArray.t
Allows updating only a fragment of a nested document inside an array
Usage in queries
MyRepo.update_all(Post,
set: [comments: change_array(0, "author", "NewName")])
Specs
change_map(String.t, term) :: Mongo.Ecto.ChangeMap.t
Allows updating only a fragment of a nested document
Usage in queries
MyRepo.update_all(Post,
set: [meta: change_map("author.name", "NewName")])
Specs
javascript(String.t, Keyword.t) :: Mongo.Ecto.JavaScript.t
Allows using inline JavaScript in queries in where clauses and inserting it as a value to the database.
The second argument acts as a context for the function. All values will be converted to valid BSON types.
Raises ArgumentError if any of the values cannot be converted.
Usage in queries
from p in Post,
where: ^javascript("this.value === value", value: 1)
Specs
regex(String.t, String.t) :: Mongo.Ecto.Regex.t
Creates proper regex object that can be passed to the database.
Usage in queries
from p in Post,
where: fragment(title: ^regex("elixir", "i"))
For supported options please see Mongo.Ecto.Regex
module documentation.