module IdCard class NetworkLogosController < ApplicationController # View Methods def index end def show end def new end def create file = logo_params["logo_file"] if file.present? && file.is_a?(ActionDispatch::Http::UploadedFile) filename = file.original_filename # binary_data = file.read binary_data = File.binread(file) meme_type = Marcel::MimeType.for(file) networklogo = IdCard::NetworkLogo.create( filename: filename, image_data: binary_data, content_type: meme_type ) render json: networklogo, only: [:id], status: :ok end end def edit end def update end def destroy end # API Methods def image logo_file = IdCard::NetworkLogo.find(params[:id]) puts params[:id] logo_binary = logo_file.image_data logo_filename = logo_file.filename send_data logo_binary, filename: logo_filename, disposition: 'inline' end private def logo_params params.require(:id_card_network_logo).permit(:logo_file) end end end