/rails-admin-scaffold

Rails generator which allows to scaffold admin controllers, views with proper (non-namespaced) models, helpers, tests and routes

Primary LanguageRubyMIT LicenseMIT

rails-admin-scaffold Build Status

Rails 4 generator which allows to scaffold admin controllers, views with proper (non-namespaced) models, helpers, tests and routes

How to use

  • Add gem 'rails-admin-scaffold', 'x.x.x' to your Gemfile
  • Run bundle install
  • Create admin scaffold with e. g. bin/rails g admin:scaffold_controller Post title:string content:text published:boolean
  • And don't forget to generate model itself bin/rails g model Post title:string content:text published:boolean and apply migrations bin/rake db:migrate

How to customize your generator templates

Put the '_form.html.erb.erb', 'edit.html.erb.erb', 'index.html.erb.erb', 'new.html.erb.erb', 'show.html.erb.erb' into '/lib/templates/admin/scaffold_controller/views/erb/'

Then the generator will use those templates to generate scaffold.

How to customize your prefix name

Type your command with option --prefix_name=xxxx.

If you want change the prefix name 'admin' to 'manager' for example you can do something like this:

bin/rails g admin:scaffold_controller Post title:string content:text published:boolean --prefix_name=manager

This will generate class Manager::PostsController < ApplicationController

How to customize your parent controller

If you want all your Admin controllers to inherit from another controller like AdminController you can specify the --parent_controller option:

bin/rails g admin:scaffold_controller Post title:string content:text published:boolean --parent_controller=admin

This will generate class Admin::PostsController < AdminController

Supports

  • Rails 4+
  • Rails default generators (erb, test::unit)
  • Haml (if haml is used for views generation)
  • Jbuilder (if jbuilder is installed for the project)

Plans

  • add haml suppurt
  • add jbuilder support
  • improve tests
  • use travis for ci
  • ability to specify parent controller name (e.g. AdminController instead of ApplicationController)
  • add minitest support
  • add rspec support
  • split controller_scaffold into several separate generators