RailsでTwitterBootstrap RubyOnRails

Rails3.2.11でTwitterBootstrapのモーダルをフォームに使う例

投稿日:

 

Rails3.2でTwitterBootstrap導入のあれこれ
sass-rails-bootstrapとsimple_formを使っている

Rails3.2でCoffeeScriptをerbテンプレートとして使う件

 

CoffeeScriptをテンプレートにつかう件がわかったのでTwitterBootstrapのモーダルをフォームにしてみた

よくあるScaffoldから

index.html.erbのnew_***_pathのremoteオプションをtrueにする

 

index.html.erbにモーダルを準備する

フォームまで全部準備するとフォーム用のオブジェクトを用意しないといけない(@単数形のやつ)ので、divだけ

twitter.github.com/bootstrap/javascript.html#modals

controllerのnewアクションにjsフォーマットを足す

 

new.js.coffeeをつくる

jQueryでフォームをrenderした後、TwitterBootstrapのスクリプトからモーダルをshowする

ここでjsエスケープを忘れるとrenderした”などがエスケープされずにActionView::Template::Error (SyntaxError: reserved word “class” can’t be assigned on line 5):みたいなエラーが出て悩むことになる

また、要素を追加せずにDismissした場合には足したフォーム要素を削除しておかないと、またモーダルを呼んだときに二重にフォームが追加されてしまう

 

formのremoteオプションをtrueにする

このままだとモーダルが消えないのでモーダルを隠す操作をする必要がある

 

controllerのcreateアクションにjsフォーマットを足す

 

create.js.coffeeをつくる

ここではモーダルをhideして、足したフォーム要素を削除した

そうしないとまたNewするとフォーム要素が2つ足されてしまう

Railsでつくった要素にはたいていIDがついているのでそれを調べればOK

2013-01-12_00h39_16

最後にindexのテーブル要素に新しく足したデータを加える必要があるけど、ajax datatablesでjsonを呼んだり、jqueryでappendしたりすればよいんじゃないでしょうか

-RailsでTwitterBootstrap, RubyOnRails
-,

執筆者:

関連記事

collection_selectに複数カラムのテキスト情報を表示

include multiple column value in Ruby on rails Collection_select. Also format the date モデルに [crayon- …

KEN_ALL.CSVを使ってRailsで郵便番号を検索するサイトを作る2

環境 KEN_ALL.CSVを使ってRailsで郵便番号を検索するサイトを作る1 前回の課題一覧 ひらがな対応 郵便番号をハイフン付きで検索したとき 全角数字で検索したとき 2語以上のとき zip検索 …

no image

Rails3.2でTwitter Bootstrap2対応のkaminariテーマを自作する〜というよりcucumber

環境 Rails3.2でページネーションをTwitter Bootstrapに対応させる~kaminariの続き すでにテーマがあるので適当に作っていたら、ページネーションをクリックしても昇順・降順の …

no image

Rails3でTwitter Bootstrapのサーチフォームを実装する~form_tag

目次1 git & gitolite2 仕組みを考える3 フィーチャの作成4 Viewの作成5 Controllerの作成6 Modelの作成7 テストが通らない!8 mergeして終わり g …

Rails4とBootstrap3.3まわりのgem~simple_form、sassy-buttons、zurui-sass-rails、font-awesome-rails

By: Sam Howzit – CC BY 2.0 目次1 bootstrap-sass2 4色ほど指定するだけでTwitter Bootstrapの配色を良い感じにしてくれるSass3 …