Sha256: 268691b113d512286732865cc0bc9cc4b7397146aeb5ec0dbeb4aa76eda609d3
Contents?: true
Size: 1014 Bytes
Versions: 31
Compression:
Stored size: 1014 Bytes
Contents
# <%= class_name %> Model <% module_namespacing do -%> class <%= class_name %> < ActiveRecord::Base include ActivityHistory include CloneRecord require 'csv' <%- attributes_names.each do |attribute| -%> <%- if @attachments.include?(attribute) -%> mount_uploader :<%=attribute%>, AttachmentUploader <%- end -%> <%- end -%> acts_as_list # Fields for the search form in the navbar def self.search_field fields = <%= attributes_names.map { |name| name } %> build_query(fields, :or, :cont) end def self.upload(file) CSV.foreach(file.path, headers: true) do |row| begin self.create! row.to_hash rescue => err end end end def self.sorter(params) params.each_with_index do |id, idx| self.find(id).update(position: idx.to_i+1) end end # Funcion para armar el query de ransack def self.build_query(fields, operator, conf) query = fields.join("_#{operator}_") query << "_#{conf}" query.to_sym end end <% end -%>
Version data entries
31 entries across 31 versions & 1 rubygems