2011/04/16

db無しでwill_paginateを使う

コントローラーの方でコレクションを取得
page = params[:page]

will_paginateのインスタンスを作成
@page = @views.paginate({
  :page => params[:page], 
  :per_page => 10, 
  :total_entries => 100
})

あとはビューの方はこんな感じ
<div id ="paging">
  <%= will_paginate @page %>
<br />

Dropboxでgit管理

まずはフォルダ作成
$ cd ~/Dropbox/
$ mkdir Repos
$ cd Repos
プロジェクト作成
$ mkdir sample.git
$ cd sample.git
$ git --bare init
んでプロジェクトフォルダでpush
cd ~/dev/old_prj
git init
git add .
git commit
git push ~/Dropbox/repo/sample.git master
git remote add origin ~/Dropbox/repo/sample.git

参考:
http://naoki.sato.name/lab/archives/38

RVMで複数のRubyやRails環境

まずはgitでインストール
% git clone git://github.com/wayneeseguin/rvm.git
$ cd rvm
$ ./install
.bash_profileに以下を記入
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

あとはRubyなりRailをガシガシ入れる(以下は一例)
% rvm list known
$ rvm install 1.8.7
$ rvm install 1.9.2
$ rvm gemset create rails2
$ rvm use 1.8.7@rails2
$ rvm gemset create rails3
$ rvm use 1.9.2@rails3
$ gem install rails

使いたいバージョンを切り替えるときは次のコマンド
%rvm use ruby-1.9.2@rails3

メッセージが結構ちゃんと親切に表示されるので詰まったらメッセージをちゃんと読んでみよう。

参考:
http://curiosity-drives.me/programming/rails/rvm_ruby_rails/

MacPortで入れたMySQLの自動起動設定

MacPortsで入れたMySQLの自動起動設定。システム環境設定からやる方法もあるけどこっちの方が好き。
MacOS 10.6.7環境
$ sudo mkdir -p /opt/local/etc/LaunchDaemons/org.macports.mysql5
$ cd /opt/local/etc/LaunchDaemons/org.macports.mysql5
$ sudo curl -O http://robwilkerson.org/_resources/hotlink/blog/mysql5.wrapper
$ sudo curl -O http://robwilkerson.org/_resources/hotlink/blog/org.macports.mysql5.plist
$ sudo chown root:wheel /opt/local/etc/LaunchDaemons/org.macports.mysql5/*
$ sudo chmod 755 /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper
$ sudo chmod 644 /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist
$ sudo ln -s /opt/local/etc/LaunchDaemons/org.macports.mysql5/org.macports.mysql5.plist /Library/LaunchDaemons/org.macports.mysql5.plist

参考:
http://d.hatena.ne.jp/solitary_shell/20100107/1262874052

herokuでGmail設定

まずはプラグインの導入
$ ruby script/plugin install git://github.com/collectiveidea/action_mailer_optional_tls.git

config/email.ymlに下記を記入
production:
  delivery_method: :smtp
  smtp_settings:
    tls: true
    address: "smtp.gmail.com"
    port: 587
    domain: "smtp.gmail.com"
    authentication: :plain
    user_name: "your_email@gmail.com"
    password: "your_password"

これだけで動くはず。ほかのプラグイン(gmail_smtpとか)もいれちゃったりするとうまく動かないので注意(これで嵌った)

参考:
http://d.hatena.ne.jp/rx7/20100526/p1

herokuでタイムゾーンの設定

herokuの環境ができている前提で
heroku config:add TZ=Asia/Tokyo