class MinimumCrudGenerator
Public Instance Methods
copy_layout_files()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 15 def copy_layout_files return unless use_sub_layout? sub_layout = options[:sub_layout] || 'application' %w(_form index show new edit).each do |action| copy_file "layouts/#{action}.html.erb", File.join('app/views/layouts/minimum_crud', sub_layout, "#{action}.html.erb") end end
generate_controller_files()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 11 def generate_controller_files template 'controller.rb.erb', File.join('app/controllers', class_path, "#{file_name}_controller.rb") end
generate_jbuilder_files()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 43 def generate_jbuilder_files return unless enable_json? @attributes_argument = @attributes.map{|a| ":#{a}"}.join(', ') %w(index show).each do |action| template "views/#{action}.json.jbuilder.erb", File.join('app/views', class_path, file_name, "#{action}.json.jbuilder") end end
generate_view_files()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 26 def generate_view_files @attributes = options[:permit_params] || model.attribute_names - ["id", "created_at", "updated_at"] if use_sub_layout? %w(_form _index _show).each do |action| template "views/with_sub_layout/#{action}.html.erb", File.join('app/views', class_path, file_name, "#{action}.html.erb") end else %w(_form index show edit new).each do |action| template "views/without_sub_layout/#{action}.html.erb", File.join('app/views', class_path, file_name, "#{action}.html.erb") end end end
Private Instance Methods
enable_json?()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 63 def enable_json? options[:enable_json] end
model()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 55 def model class_name.gsub(/\A.*::/, '').classify.constantize end
use_sub_layout?()
click to toggle source
# File lib/generators/minimum_crud_generator.rb, line 59 def use_sub_layout? options[:sub_layout] != 'none' end