Class Sequel::Model::Associations::OneToManyAssociationReflection
In: lib/sequel/model/associations.rb
Parent: AssociationReflection

Methods

Public Instance methods

The keys in the associated model‘s table related to this association

[Source]

     # File lib/sequel/model/associations.rb, line 306
306:         def associated_object_keys
307:           self[:keys]
308:         end

one_to_many associations can only have associated objects if none of the :keys options have a nil value.

[Source]

     # File lib/sequel/model/associations.rb, line 312
312:         def can_have_associated_objects?(obj)
313:           !self[:primary_keys].any?{|k| obj.send(k).nil?}
314:         end

Default foreign key name symbol for key in associated table that points to current table‘s primary key.

[Source]

     # File lib/sequel/model/associations.rb, line 318
318:         def default_key
319: 
320:           "#{underscore(demodulize(self[:model].name))}_id"
321:         end

The key to use for the key hash when eager loading

[Source]

     # File lib/sequel/model/associations.rb, line 323
323:         def eager_loader_key
324:           self[:eager_loader_key] ||= primary_key
325:         end

The hash key to use for the eager loading predicate (left side of IN (1, 2, 3))

[Source]

     # File lib/sequel/model/associations.rb, line 328
328:         def eager_loading_predicate_key
329:           self[:eager_loading_predicate_key] ||= qualify_assoc(self[:key])
330:         end

The column in the current table that the key in the associated table references.

[Source]

     # File lib/sequel/model/associations.rb, line 334
334:         def primary_key
335:          self[:primary_key]
336:         end
qualified_key()

primary_key qualified by the current table

[Source]

     # File lib/sequel/model/associations.rb, line 339
339:         def qualified_primary_key
340:           self[:qualified_primary_key] ||= qualify_cur(primary_key)
341:         end

Whether the reciprocal of this association returns an array of objects instead of a single object, false for a one_to_many association.

[Source]

     # File lib/sequel/model/associations.rb, line 345
345:         def reciprocal_array?
346:           false
347:         end

Destroying one_to_many associated objects automatically deletes the foreign key.

[Source]

     # File lib/sequel/model/associations.rb, line 350
350:         def remove_before_destroy?
351:           false
352:         end

The one_to_many association needs to check that an object to be removed already is associated.

[Source]

     # File lib/sequel/model/associations.rb, line 355
355:         def remove_should_check_existing?
356:           true
357:         end

One to many associations set the reciprocal to self when loading associated records.

[Source]

     # File lib/sequel/model/associations.rb, line 360
360:         def set_reciprocal_to_self?
361:           true
362:         end

[Validate]