Wafflemix
To run this app locally: cd test/dummy
Setup your db here: wafflemix/test/dummy/config/database.yml
start dummy app with: rails server
Using as an engine + setting up new application
-
Add wafflemix to your gemfile - gem ‘wafflemix’, ‘~> 0.0.5’
-
config/application.rb - add require “wafflemix” below bundle method.
-
config/routes.rb - add: mount Wafflemix::Engine => “/”
-
Include wafflemix helpers in application_controller.rb: helper Wafflemix::Engine.helpers
-
rake wafflemix:install:migrations
-
rake db:migrate
Devise
-
Ensure you have defined default url options in your environments files. Here is an example of default_url_options appropriate for a development environment in config/environments/development.rb:
config.action_mailer. = { :host => 'localhost:3000' }
In production, :host should be set to the actual host of your application.
-
Ensure you have defined root_url to something in your config/routes.rb. For example:
root :to => "home#index"
-
Ensure you have flash messages in app/views/layouts/application.html.erb. For example:
<p class="notice"><%= notice %></p> <p class="alert"><%= alert %></p>
-
If you are deploying Rails 3.1 on Heroku, you may want to set:
config.assets.initialize_on_precompile = false
On config/application.rb forcing your application to not access the DB or load models when precompiling your assets.
-
Since devise is an engine and this CMS is an engine, we need to set the order in which their loaded.
In config/application.rb add:
config.railties_order = [Wafflemix::Engine, :main_app, :all]
Read more about Devise: github.com/plataformatec/devise
S3 uploads
Add the following to application.rb within the application class definition:
config.middleware.insert 0, ‘Dragonfly::Middleware’, :images
In an initializer or in config/environments/development.rb set:
ENV = ‘your_key’ ENV = ‘your_secret’ ENV = ‘your-bucket’
And for heroku (by default production):
heroku config:add S3_KEY=***your-s3-key*** S3_SECRET=***your-s3-secret*** S3_BUCKET=***your-bucket***
Overriding routes
Overriding routes is straightforward, in config/routes add:
Wafflemix::Engine.routes.draw do
end
Add any routes you want to override inside this block.
For example, changing the root url:
Wafflemix::Engine.routes.draw do
root :to => "posts#index"
end
##Todo’s New app generators Instructions for S3 config Seed Default roles
This project rocks and uses MIT-LICENSE.