2012-01-01から1年間の記事一覧
capistrano-unicornはその名の通りcapistranoでunicornを扱う便利なgemです。 早速Railsのサービスに導入してみた。試した環境は ruby-1.9.3p194 rails-3.2.9 capistrano-2.13.5 capistrano-unicorn-0.1.6 githubの使い方を参考にGemfileに下記を追加してbun…
Monitとは指定したプロセスを監視して落ちていた場合に再起動を行なってくれるデーモンプロセスです。 DaemontoolsとSuperVisordと比べると設定が一番シンプルな気がします。 yumからインストール $ sudo yum install monit # 確認 $ yum list installed | g…
mysqlにおいてWHEREとJOIN ONで条件を指定した場合の違いがよくわかっていなかったのでまとめておく。映画を表すmoviesテーブルと映画の日毎の再生回数を表すplaycountsテーブルがあるとする。 moviesテーブル +----+------------+ | id | title | +----+---…
demo.rake desc "task to receive args" task :demo, :arg1, :arg2 task :demo => :environment do |t, args| puts args[:arg1] puts args[:arg2] end 実行例 rake "demo[aaa,bbb]" もうちょっと普通に引数を渡したいものです。
RAILS_ROOT/app/model/page/count.rb class Page::Count < ActiveRecord::Base end RAILS_ROOT/app/model/page/count_observer.rb class Page::CountObserver < ActiveRecord::Observer def after_save(model) logger.info "Saved!" end end RAILS_ROOT/conf…
PCとモバイルでドメインを別にしてサービスを提供することもあると思う。 その場合アプリケーションを別にしてもいいのだがモデルを共有したい場合もある。 そういう時はconfig/routes.rbでconstraints指定をしてrequestされたhost名でコントローラを出し分…
環境 rails 3.2.8 ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.4.0] actionmailer 3.2.8 rails3のaction mailerでメールを送る際にエクセルを添付したいケースがあると思う。 Rails Guideにならって書くとこうなる。 # -*- coding: utf-8 …
Rails3といえばasset pipeline。 賛否両論ありますが僕はそのコンセプトが好きです。 ただ欠点があってCPUの性能が低いマシン(EC2 smallインスタンスなど)ではasset precompileがくそ遅い。 仕事で運用しているあるサイトでは大体150秒くらいかかってしまっ…