Manage

Admin backend started from iain.nl/backends-in-rails-3-1

Based on inherit_resources, slim, kaminari

Installing

Add the engine

to Gemfile

gem 'manage'

to routes.rb yourapp/config/routes.rb:

mount Manage::Engine, at: "/manage"

Defining resource for administration

Add the resource to your app routes.rb yourapp/config/routes.rb:

Manage::Engine.routes.draw do
  resources :cities
end

Create controller in your application yourapp/app/controllers/manage/cities_controller.rb

class Manage::CitiesController < Manage::ResourceController
    @@per_page = 10 # optional
end

View overriding

You can overrede the views in

app/views/manage/countries

  • _index.html.slim

  • _form.html_slim

  • edit.html.slim

  • new.html.slim

  • show.html.slim

Authorization

In your app do

rails generate devise AdminUser

delete "devise_for :admin_users" from routes.rb

Create an admin user. The users benefit from the devise password validation/generation but doesn’t use the devise controllers.

AdminUser.create(email: '[email protected]', password: '11223344', password_confirmation: '11223344')

TODO

  • Make it work with devise session controllers

  • add filters

  • add search

  • make nice layout

License

This project rocks and uses MIT license