Module: Traits::Association::Macro

Included in:
Traits::Association
Defined in:
lib/traits/concerns/association/macro.rb

Instance Method Summary collapse

Instance Method Details

#belongs_to?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/traits/concerns/association/macro.rb', line 24

def belongs_to?
  macro == :belongs_to
end

#has_and_belongs_to_many?Boolean Also known as: habtm?

Returns:

  • (Boolean)


10
11
12
# File 'lib/traits/concerns/association/macro.rb', line 10

def has_and_belongs_to_many?
  macro == :has_and_belongs_to_many
end

#has_many?Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/traits/concerns/association/macro.rb', line 16

def has_many?
  macro == :has_many
end

#has_one?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/traits/concerns/association/macro.rb', line 20

def has_one?
  macro == :has_one
end

#short_macroObject



6
7
8
# File 'lib/traits/concerns/association/macro.rb', line 6

def short_macro
  habtm? ? :habtm : macro
end

#to_hashObject



38
39
40
# File 'lib/traits/concerns/association/macro.rb', line 38

def to_hash
  super.merge!(macro: macro, collection: collection?)
end

#to_many?Boolean Also known as: collection?

Returns:

  • (Boolean)


28
29
30
# File 'lib/traits/concerns/association/macro.rb', line 28

def to_many?
  has_and_belongs_to_many? || has_many?
end

#to_one?Boolean

Returns:

  • (Boolean)


34
35
36
# File 'lib/traits/concerns/association/macro.rb', line 34

def to_one?
  belongs_to? || has_one?
end