refactorizacion
This commit is contained in:
parent
3a38cae0bc
commit
1b6599dd40
1 changed files with 8 additions and 15 deletions
|
@ -306,10 +306,8 @@ class Post
|
||||||
def valid?
|
def valid?
|
||||||
@errors = {}
|
@errors = {}
|
||||||
|
|
||||||
layout.metadata.keys.map(&:to_sym).each do |metadata|
|
attributes.each do |attr|
|
||||||
template = send(metadata)
|
errors[attr] = self[attr].errors unless self[attr].valid?
|
||||||
|
|
||||||
errors[metadata] = template.errors unless template.valid?
|
|
||||||
end
|
end
|
||||||
|
|
||||||
errors.blank?
|
errors.blank?
|
||||||
|
@ -337,8 +335,8 @@ class Post
|
||||||
end
|
end
|
||||||
|
|
||||||
def update_attributes(hashable)
|
def update_attributes(hashable)
|
||||||
hashable.to_hash.each do |name, value|
|
hashable.to_hash.each do |attr, value|
|
||||||
self[name].value = value
|
self[attr].value = value
|
||||||
end
|
end
|
||||||
|
|
||||||
save
|
save
|
||||||
|
@ -350,11 +348,7 @@ class Post
|
||||||
# por su id y convertimos a Array para poder agregar o quitar luego
|
# por su id y convertimos a Array para poder agregar o quitar luego
|
||||||
# sin pasar por ActiveRecord.
|
# sin pasar por ActiveRecord.
|
||||||
def usuaries
|
def usuaries
|
||||||
@usuaries ||= if (d = document_usuaries).empty?
|
@usuaries ||= document_usuaries.empty? ? [] : Usuarie.where(id: document_usuaries).to_a
|
||||||
[]
|
|
||||||
else
|
|
||||||
Usuarie.where(id: d).to_a
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
@ -367,14 +361,13 @@ class Post
|
||||||
end
|
end
|
||||||
|
|
||||||
def document_usuaries
|
def document_usuaries
|
||||||
document.data.fetch('usuaries', [])
|
@document_usuaries ||= document.data.fetch('usuaries', [])
|
||||||
end
|
end
|
||||||
|
|
||||||
# Ejecuta la acción de guardado en cada atributo
|
# Ejecuta la acción de guardado en cada atributo.
|
||||||
# TODO: Solo guardar los que se modificaron
|
|
||||||
def save_attributes!
|
def save_attributes!
|
||||||
attributes.map do |attr|
|
attributes.map do |attr|
|
||||||
public_send(attr).save
|
self[attr].save
|
||||||
end.all?
|
end.all?
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue