![[PukiWiki] [PukiWiki]](image/pukiwiki.png) 
 Tag: Rails/Bootstrap
gem 'bootstrap-sass', '~> 3.3.4' gem 'font-awesome-sass'
bundle install --path vendor/bundle
@import "bootstrap-sprockets"; @import "bootstrap"; @import "font-awesome-sprockets"; @import "font-awesome";
//= require bootstrap-sprockets
bundle exec rails g scaffold book title:string author:string summary:text bundle exec rake db:migrate
<nav class="navbar navbar-default" role="navigation">
    <div class="container-fluid">
        <div class="navbar-header">
            <a class="navbar-brand" href="/"><i class="fa fa-home"></i>Home</a>
        </div>
        <div class="navbar-collapse collapse">
            <ul class="nav navbar-nav">
                <li><a href="http://www.google.com/" target="_blank">Google</a></li>
                <li><a href="http://www.yahoo.co.jp/" target="_blank">Yahoo! Japan</a></li>
            </ul>
            <ul class="nav navbar-nav navbar-left">
                <div class="form-group">
                    <%= form_tag('/softwares', method: 'get', class: 'navbar-form navbar-right') do %>
                        <%= text_field_tag(:q, params[:q], class: 'form-control', style: 'width: 200px;', placeholder: 'Search') %>
                    <% end %>
                </div>
            </ul>
        </div>
    </div><!-- /.container-fluid -->
</nav>
<div class="container">
    <!-- flash messages -->
    <%= yield %>
    <hr>
    <footer>
        <p>© src256</p>
    </footer>
</div>
<%= form_for(@book, html: {class: 'form-horizontal'}) do |f| %>
    <% if @book.errors.any? %>
        <div id="error_explanation">
            <h2>エラーが発生しました :</h2>
            <ul>
                <% @book.errors.full_messages.each do |msg| %>
                    <li><%= msg %></li>
                <% end %>
            </ul>
        </div>
    <% end %>
    <div class="form-group">
        <%= f.label(:title, 'タイトル', class: 'col-xs-2 control-label') %>
        <div class="col-xs-10">
            <%= f.text_field(:title, class: 'form-control') %>
        </div>
    </div>
    <div class="form-group">
        <%= f.label(:author, '著者', class: 'col-xs-2 control-label') %>
        <div class="col-xs-10">
            <%= f.text_field(:author, class: 'form-control') %>
        </div>
    </div>
    <div class="form-group">
        <%= f.label(:summary, '概要', class: 'col-xs-2 control-label') %>
        <div class="col-xs-10">
            <%= f.text_area(:summary, rows: 14, cols: 20, class: 'form-control') %>
        </div>
    </div>
    <div class="form-group">
        <div class="col-xs-12">
            <%= f.submit('保存', class: 'btn btn-primary') %>
        </div>
    </div>
<% end %>
.field_with_errors {
  @extend .form-group;
  @extend .has-error;
}
.form-horizontal .field_with_errors {
  margin: 0;
}
.form-horizontal .field_with_errors:before, .form-horizontal .field_with_errors::after {
  display: block;
  clear: none;
}
    <% if @item.errors.any? %>
        <div class="alert alert-danger" role="alert">
            <button class="close" data-dismiss="alert">×</button>
            <h2>エラーが発生しました :</h2>
            <ul>
                <% @item.errors.full_messages.each do |msg| %>
                    <li><%= msg %></li>
                <% end %>
            </ul>
        </div>
    <% end %>