Skip to content

Instantly share code, notes, and snippets.

@isuke
Last active December 21, 2016 07:35
Show Gist options
  • Save isuke/989790aea5cd1e01aa4b98d48de319bf to your computer and use it in GitHub Desktop.
Save isuke/989790aea5cd1e01aa4b98d48de319bf to your computer and use it in GitHub Desktop.
namespace :seed_fu_gen do
desc 'generate seed-fu file for line.'
task dump: :environment do |_t|
j = ActiveSupport::JSON
%w(
Affiliation
AimCategory
AimScale
Aim
AroundAppraiser
AshitaUser
AssessmentPeriod
Assessment
Axis
AxisTemplate
Company
CompanyNotice
Division
Employment
EvaluationItemScaleTemplate
EvaluationItemScale
EvaluationItemTemplate
EvaluationItem
EvaluationPeriod
EvaluationSheetAroundAppraiser
EvaluationSheetReadable
EvaluationSheetStatusLog
EvaluationSheetTemplate
EvaluationSheetViewableUser
EvaluationSheet
GradeTable
Grade
LevelTable
Level
MailTarget
MailTemplate
MarkNotationTable
MarkNotation
PerquisiteBenefit
Perquisite
Rate
Rating
UserHistory
UserLabelChoice
UserLabelValue
UserLabel
UserMail
User
ViewableUser
).each do |class_name|
puts class_name
SeedFu::Writer.write("./db/dump/#{class_name.underscore}.rb", class_name: class_name) do |w|
klass = class_name.constantize
options = if klass.column_names.include?("type")
{ methods: :type }
else
{}
end
klass.all.each do |x|
# w << x.as_json(options.merge(except: [:created_at, :updated_at]))
# w << x.attributes
w << j.decode(j.encode(x, options))
end
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment