2011-01-01から1ヶ月間の記事一覧

【PostgreSQL】エラーメッセージの文字化けを直す

WindowsでPostgreSQLを使っていたところ、Railsからこんなエラーが出てきました。。 (´・ω・`) PGError: ERROR: 蛻・findtime"繧貞梛"timestamp without time zone"縺ォ繧ュ繝」繧ケ繝 どうやらSJISでエラーメッセージを吐いているのに、Rails側はエラーをSJISだ…

【Rails3】DB内のデータ指定の仕方

colname が変数valueのものを抜き出す場合: ModelClass.where("colname = '#{value}'") とか ModelClass.where("colname = ?", value) とか。 テーブル全体から検索する場合、Rails3から「where」というメソッドを使えるようになっています。よく使うのでイ…

【Rails】Controllerで重い処理を実行する

(Controllerに限らないですが)重い処理があると、htmlレンダリングはその処理後に行われるためユーザにはフリーズしたように見えてしまいます。(´・ω・`) 〜コントローラで〜 def heavyTask #重い処理 sleep(1000) end 、、、1000秒待たないと画面が表示さ…

【Rails3】カラムの追加をワンライナーで書く

特にプロトタイピングしている時などに、テーブルにカラム追加したくなること、よくありますよね?よね? よくあることはワンライナーで楽しましょう。 $ rails g migration AddColnameToTablename colname:string これでおK(`・ω・´) え、最初にちゃんとテ…

【Rails3】カラム名を変更する

2つ方法があります。 (1)マイグレーションをテーブル追加前に戻しテーブル名を変更の上再度マイグレーションする。 (2)カラム名を変更するマイグレーションを新規に行う。 「カラム名間違えたぁぁあ!(´A`#)」ぐらいなら(1)、開発を進めてしまっていたら(2)…

【Rails3】カラム名に使ってはいけない予約語を調べる

カラム名に「type」を使ったところ、以下のようなエラーが出てしまいました。 ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'news'. This error is raised because the column 'type' is reserv…

【Rails3】Rails2系のscript/◯◯を使う

・Railsをコンソールで実行したい(script/console): $ rails console・Rails内のメソッドをコマンドラインから実行したい(script/runner) $ rails runner

【Rails3】RSpecを使う

(1) gemfileに以下の記述を追加 group :test, :development do gem "rspec-rails", ">= 2.3.0" end(2)gemのインストール $ bundle install(3)フォルダ作成、およびヘルパ関数のインストール $ rails g rspec:install 以上の設定がされていると、 $ rails g m…

【Rails3】モデルを生成する

$ rails g model Modelname・DBでは「Modelnames」という複数形のテーブル名になる。 ・モデルはClassなので、1文字目が大文字英数で指定する。スキャッフォルドとして作る場合には、 $ rails g scaffold Modelname

【Rails3】Railsの起動・処理を早くする(mongrelの利用法)

ローカル環境でRailsを実行する際、ウェブサーバとしてWebrickとMongrelが選べるが、 Mongrelを利用したほうが高速。$gem install mongrelした上で、"Gemfile"に gem 'mongrel'を追記すれば、Mongrelが使われるようになる。 【追記】 そうは言ってもWindows…

【heroku】Ruby1.9.2を使う

$ heroku stack するとリストが表示される aspen-mri-1.8.6 > bamboo-ree-1.8.7 bamboo-mri-1.9.1 (beta) bamboo-mri-1.9.2 (beta)ここで切り替えコマンドを打つ: $ heroku stack:migrate bamboo-mri-1.9.2その後 $ git push heroku master で変更を更新す…

【Rails3】プロジェクトを作成する

$ rails new myproject ※うっかり2.3までの環境でこのコマンドを打つと、 「new」というプロジェクトが出来てしまいショボーン(´・ω・`)としますね。 herokuを使う場合、DBがPostgresSQLになるので-dオプションでDBを指定しちゃうのがお勧め。 $ rails new …