This is a fork from https://github.com/decioferreira/bootstrap-generators
- Patch your scaffold generator
- Use bootstrap
- Translate fields (english and french for the moment)
- References produce selects
- Automatic menu
Caution : supported template engine : haml only
The current supported version of Twitter Bootstrap is 3.3.4.
In your Gemfile, add this line:
gem 'toronto'
gem 'haml-rails'
Run bundle install:
bundle install
Get started:
rails generate toronto:install
To overwrite files that already exist, pass the --force
(-f
) option.
Once you've done that, any time you generate a controller or scaffold, you'll get Bootstrap templates.
In Rails >= 4.1 you need to run spring stop
so than Rails preloader knows about new templates.
rails generate scaffold post title body:text published:boolean
You can easily customize colors, grid system, fonts, and much more by editing bootstrap-variables.[less|scss]
on your application assets folder.
To print the options and usage run the command rails toronto:install --help
Usage:
rails generate toronto:install [options]
Options:
-se, [--stylesheet-engine=STYLESHEET_ENGINE] # Indicates when to generate stylesheet engine
# Default: scss
[--skip-turbolinks], [--no-skip-turbolinks] # Indicates when to generate skip turbolinks
[--languages=LANGUAGES_LIST] # Indicates wich languages to use
# Use --languages=en,fr,de,cn for english, french, german and chineese (the only languages that are implemented)
# The first language in the list will be the default language in rails.
# If option not given, then only the language english is generated
Runtime options:
-f, [--force] # Overwrite files that already exist
-p, [--pretend], [--no-pretend] # Run but do not make any changes
-q, [--quiet], [--no-quiet] # Suppress status output
-s, [--skip], [--no-skip] # Skip files that already exist
Copy BootstrapGenerators default files
Supported template engines:
- Haml
Supported stylesheet engines:
- CSS
- SCSS
- LESS
Make sure you have sass-rails
dependency on your Gemfile:
gem 'sass-rails'
And then run:
rails generate bootstrap:install --stylesheet-engine=scss
Now you can customize the look and feel of Bootstrap.
Add the dependency on your Gemfile:
gem 'therubyracer', platforms: :ruby
gem 'less-rails'
And then run:
rails generate bootstrap:install --stylesheet-engine=less
Now you can customize the look and feel of Bootstrap.
Run the generator with option --skip-turbolinks
to remove turbolinks references from the generated layout.
If you select LESS or SCSS as your stylesheet engine, you will get an app/assets/stylesheets/bootstrap-variables.[less|scss]
file with all of the default variables of Bootstrap. This way you can customize the look and feel of Bootstrap without having to download any extra file.
Select all jQuery plugins (app/assets/javascripts/bootstrap.js
)
//= require bootstrap
Or quickly add only the necessary javascript (Transitions: required for any animation; Popovers: requires Tooltips)
//= require bootstrap/collapse
//= require bootstrap/modal
//= require bootstrap/button
//= require bootstrap/affix
//= require bootstrap/tab
//= require bootstrap/alert
//= require bootstrap/transition
//= require bootstrap/tooltip
//= require bootstrap/popover
//= require bootstrap/scrollspy
//= require bootstrap/dropdown
//= require bootstrap/carousel
In Rails 3.0 and above, generators don’t just look in the source root for templates, they also search for templates in other paths. And one of them is lib/templates.
Since Bootstrap Generators installs its templates under lib/templates, you can go and customize them.
To update the version of Bootstrap on this Gem you can run the following command:
rake bootstrap:update
There might be some manual changes needed after running this command. But most of the process is automatic.