move add_relationship to each class method
This commit is contained in:
parent
6e7d8b7ee0
commit
30596c4488
@ -184,15 +184,18 @@ module FastJsonapi
|
|||||||
end
|
end
|
||||||
|
|
||||||
def has_many(relationship_name, options = {}, &block)
|
def has_many(relationship_name, options = {}, &block)
|
||||||
create_relationship(relationship_name, :has_many, options, block)
|
relationship = create_relationship(relationship_name, :has_many, options, block)
|
||||||
|
add_relationship(relationship)
|
||||||
end
|
end
|
||||||
|
|
||||||
def has_one(relationship_name, options = {}, &block)
|
def has_one(relationship_name, options = {}, &block)
|
||||||
create_relationship(relationship_name, :has_one, options, block)
|
relationship = create_relationship(relationship_name, :has_one, options, block)
|
||||||
|
add_relationship(relationship)
|
||||||
end
|
end
|
||||||
|
|
||||||
def belongs_to(relationship_name, options = {}, &block)
|
def belongs_to(relationship_name, options = {}, &block)
|
||||||
create_relationship(relationship_name, :belongs_to, options, block)
|
relationship = create_relationship(relationship_name, :belongs_to, options, block)
|
||||||
|
add_relationship(relationship)
|
||||||
end
|
end
|
||||||
|
|
||||||
def create_relationship(base_key, relationship_type, options, block)
|
def create_relationship(base_key, relationship_type, options, block)
|
||||||
@ -206,7 +209,7 @@ module FastJsonapi
|
|||||||
base_key_sym = name
|
base_key_sym = name
|
||||||
id_postfix = '_id'
|
id_postfix = '_id'
|
||||||
end
|
end
|
||||||
relationship = Relationship.new(
|
Relationship.new(
|
||||||
key: options[:key] || run_key_transform(base_key),
|
key: options[:key] || run_key_transform(base_key),
|
||||||
name: name,
|
name: name,
|
||||||
id_method_name: options[:id_method_name] || "#{base_serialization_key}#{id_postfix}".to_sym,
|
id_method_name: options[:id_method_name] || "#{base_serialization_key}#{id_postfix}".to_sym,
|
||||||
@ -219,7 +222,6 @@ module FastJsonapi
|
|||||||
polymorphic: fetch_polymorphic_option(options),
|
polymorphic: fetch_polymorphic_option(options),
|
||||||
conditional_proc: options[:if]
|
conditional_proc: options[:if]
|
||||||
)
|
)
|
||||||
add_relationship(relationship)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def compute_serializer_name(serializer_key)
|
def compute_serializer_name(serializer_key)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user