This app demonstrates how to configure a Rails 3 app with Cream.
$ rails new cream_app —skip-activerecord $ cd cream_app
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
Check out the options available when running the cream:full_config generator
$ rails generate full_config -h
The —orm and —strategy options are essential.
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 mongo_mapper --strategy role_string --admin-user
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 are no devise routes in this app!?