Home > cream-app-mongoid

cream-app-mongoid

Cream-app-mongoid is a project mainly written in RUBY and JAVASCRIPT, it's free.

Cream 7.7 demonstration app

h1. Cream Rails 3 demo application

This app demonstrates how to configure a Rails 3 app with Cream.

h2. Create Rails 3 app without Active Record

  $ rails new cream_app --skip-activerecord  
  $ cd cream_app

h2. Install Cream

Insert into Gemfile

  gem 'cream'  

Also remove gem 'sqlite3-ruby'

Install using bundler

  $ bundle install

A set of gems related to Cream are installed...

  Using cancan (1.4.1)
  Using cancan-permits (0.3.6)
  Using cancan-rest-links (0.2.0)
  Using devise (1.1.5) 
  Using devise-links (0.2.1)
  Using cream (0.7.6)  
  $ rails g

Now we have a lot of interesting generators at our disposal related to Cream

  Cancan:
    cancan:config
    cancan:license
    cancan:licenses
    cancan:permit
    cancan:permits
    cancan:restlinks

  Cream:
    cream:app
    cream:full_config

  Devise:
    devise
    devise:config
    devise:install
    devise:links
    devise:users
    devise:views  

  Mongoid:
    mongoid:devise

  Permits:
    permits:config

  Roles:
    roles:config    

h2. Check the run options for the main generator

Check out the options available when running the cream:full_config generator

  $ rails generate full_config -h

The --orm and --strategy options are essential.

h2. Do a Full Cream configuration of the app

The following will set up the app using:

  • a simple role_string role strategy (role attribute of type String on the User model)
  • mongoid as the ORM
  • create a devise Admin user that inherits from User
  $ rails g cream:full_config --orm mongoid --strategy role_string --admin-user

h2. Start the server

Ready to rock!

  $ rails server

From here on, read the README of the individual subproject that Cream consists of, such as devise, cancan, cancan-permits and so on to enhance this application.

Note: Currently there is even no devise routes in this app!