class Marten::DB::Query::ManyToManySet(M)
- Marten::DB::Query::ManyToManySet(M)
- Marten::DB::Query::Set(M)
- Reference
- Object
Overview
Represents a query set resulting from a many-to-many relation.
Direct Known Subclasses
Defined in:
marten/db/query/many_to_many_set.crConstructors
Instance Method Summary
-
#add(objs : Enumerable(M) | Iterable(M))
Adds the given objects to the many-to-many relationship.
-
#add(*objs : M)
Adds the given objects to the many-to-many relationship.
-
#clear : Nil
Clears the many-to-many relationship.
-
#remove(objs : Enumerable(M) | Iterable(M)) : Nil
Removes the given objects from the many-to-many relationship.
-
#remove(*objs : M) : Nil
Removes the given objects from the many-to-many relationship.
Instance methods inherited from class Marten::DB::Query::Set(M)
&(other : self)
&,
[](index : Int)[](range : Range) [], []?(index : Int)
[]?(range : Range) []?, |(other : self) |, all all, any? any?, average(field : String | Symbol) average, build(**kwargs)
build(**kwargs, &) build, bulk_create(objects : Array(M), batch_size : Int32 | Nil = nil) bulk_create, count(field : String | Symbol | Nil = nil) count, create(**kwargs)
create(**kwargs, &) create, create!(**kwargs)
create!(**kwargs, &) create!, delete(raw : Bool = false) : Int64 delete, distinct
distinct(*fields : String | Symbol) distinct, each(&) each, exclude(query_node : Node)
exclude(**kwargs)
exclude(&) exclude, exists?(query_node : Node)
exists?
exists?(**kwargs)
exists?(&) exists?, filter(raw_predicate : String, params : Array)
filter(raw_predicate : String, params : Hash | NamedTuple)
filter(raw_predicate : String)
filter(query_node : Node)
filter(raw_predicate : String, *args)
filter(raw_predicate : String, **kwargs)
filter(**kwargs)
filter(&) filter, first first, first! first!, get(query_node : Node)
get(**kwargs)
get(&) get, get!(query_node : Node)
get!(**kwargs)
get!(&) get!, get_or_create(**kwargs)
get_or_create(**kwargs, &) get_or_create, get_or_create!(**kwargs)
get_or_create!(**kwargs, &) get_or_create!, includes?(value : M) includes?, inspect(io) inspect, join(*relations : String | Symbol) join, last last, last! last!, maximum(field : String | Symbol) maximum, minimum(field : String | Symbol) minimum, model model, none none, order(fields : Array(String | Symbol))
order(*fields : String | Symbol) order, paginator(page_size : Int) paginator, pick(fields : Array(String | Symbol)) : Array(Field::Any) | Nil
pick(*fields : String | Symbol) : Array(Field::Any) | Nil pick, pick!(fields : Array(String | Symbol)) : Array(Field::Any)
pick!(*fields : String | Symbol) : Array(Field::Any) pick!, pks pks, pluck(fields : Array(String | Symbol)) : Array(Array(Field::Any))
pluck(*fields : String | Symbol) : Array(Array(Field::Any)) pluck, prefetch(*relations : String | Symbol) prefetch, raw(query : String, params : Array)
raw(query : String, params : Hash | NamedTuple)
raw(query : String, *args)
raw(query : String, **kwargs) raw, resolve_template_attribute(key : String) resolve_template_attribute, reverse reverse, size size, sum(field : String | Symbol) sum, to_s(io) to_s, to_sql : String to_sql, update(values : Hash | NamedTuple)
update(**kwargs) update, using(db : Nil | String | Symbol) using
Constructor methods inherited from class Marten::DB::Query::Set(M)
new(query : Marten::DB::Query::SQL::Query(M) = SQL::Query(M).new, prefetched_relations : Array(String) = [] of String)
new
Macros inherited from module Marten::Template::Object
template_attributes(*names)
template_attributes
Constructor Detail
Instance Method Detail
def add(objs : Enumerable(M) | Iterable(M))
#
Adds the given objects to the many-to-many relationship.
If the objects specified in objs
are already in the relationship, they will be skipped and not added again.
def add(*objs : M)
#
Adds the given objects to the many-to-many relationship.
If the objects specified in objs
are already in the relationship, they will be skipped and not added again.
def remove(objs : Enumerable(M) | Iterable(M)) : Nil
#
Removes the given objects from the many-to-many relationship.