jQueryのDatepickerを初めて使ってカレンダーを表示させてみました。
なかなか便利だけど、ハマったところもあり。
バージョンはこれ。
最初は、'jquery-ui-rails' のGemを使ったのですが、ローカルのWEBRickのproductionモードでは動いたのに、Apacheにすると前月/翌月のアイコンが表示されない問題に遭遇。
画像ファイルは、Gemに入ってるのでどうにもならず、Gemを使うのをやめました。
さて、jQueryのファイルをどこに置くのか。
こちらのサイトを参考にしました。
http://www.ninxit.com/blog/2012/04/08/railsjqueryuidatepicke/
app/assets/javascripts/jquery-ui-1.8.23.custom.min.js
$ vi app/assets/javascripts/application.js
//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require_tree .
app/assets/stylesheets/jquery-ui/jquery-ui-1.8.23.custom.css
$ vi app/assets/stylesheets/application.css
*= require_self
*= require_tree .
*= require_tree ./jquery-ui
app/assets/images/images/*.png
app/assets/javascripts/jquery.ui.datepicker-ja.js
$ vi app/assets/javascripts/application.js
//= require jquery.ui.datepicker-ja
$ bundle exec rake assets:precompile RAILS_ENV=production
$ rails s -e production
ハマったところは、上記の赤字にある画像ファイルのパス。
ググると皆いろいろなことを書いてます。
環境によるのかもしれませんね。
cssには、
url(images/ui-bg_glass_75_ffffff_1x400.png) のような定義をされているので、
imagesディレクトリの中のimagesディレクトリという読み方になってしまってます。
CSSの定義を変えても良いのですが、将来的のバージョンアップを考えると
あまり好ましくないということで、画像ファイルの配置場所を変えることにしました。
Rails3はややこしい(>_<)