diff --git a/app/models/institution.rb b/app/models/institution.rb index 45a283350e02c5ba95fc64a7719a99d999954026..cd6d6909f302ebe89246ded0b07ee93e04c7922b 100644 --- a/app/models/institution.rb +++ b/app/models/institution.rb @@ -21,6 +21,9 @@ class Institution < ApplicationRecord #has_many :learning_objects, as: :publisher #has_many :collections, as: :owner + has_attached_file :avatar, styles: { medium: '300x300>', thumb: '60x60>' }, default_url: '' + validates_attachment_content_type :avatar, content_type: ['image/jpg', 'image/jpeg', 'image/png', 'image/gif'] + validates_presence_of :name acts_as_paranoid diff --git a/app/serializers/institution_serializer.rb b/app/serializers/institution_serializer.rb index 5de724635d138036ba37c13f2768f38b30266734..8b7d169d6c25a531061e9531bd4461e3f0634097 100644 --- a/app/serializers/institution_serializer.rb +++ b/app/serializers/institution_serializer.rb @@ -1,4 +1,4 @@ class InstitutionSerializer < ActiveModel::Serializer cache key: 'institution', expires_in: 4.hours - attributes :id, :name, :description, :address, :city, :country, :created_at, :updated_at + attributes :id, :name, :description, :address, :city, :country, :avatar, :created_at, :updated_at end diff --git a/db/migrate/20170503134230_add_attachment_avatar_to_institutions.rb b/db/migrate/20170503134230_add_attachment_avatar_to_institutions.rb new file mode 100644 index 0000000000000000000000000000000000000000..fee56386d833200d0c3faa7ff8a379d817bdbca7 --- /dev/null +++ b/db/migrate/20170503134230_add_attachment_avatar_to_institutions.rb @@ -0,0 +1,11 @@ +class AddAttachmentAvatarToInstitutions < ActiveRecord::Migration + def self.up + change_table :institutions do |t| + t.attachment :avatar + end + end + + def self.down + remove_attachment :institutions, :avatar + end +end