アフィリエイト広告を利用しています

広告

posted by fanblog

rails テーブル名を複数系にする機能。

rails では、generate で table を作成する時、
テーブル名の単数系で指定すると複数系にしたテーブル名でテーブルを作成してくれる。
単純に最後に "s" を付けてるのかなと思って、単純にいかないケースでやってみた。

"company" の複数形は、"companies" である。
generate してみた。
ruby script/generate scaffold company company_code:string company_name:string


migration ファイルを見ると "companies" になっている。
class CreateCompanies < ActiveRecord::Migration
def self.up
create_table :companies do |t|
t.string :company_code
t.string :company_name

t.timestamps
end
end

def self.down
drop_table :companies
end
end


このまま、rake すれば複数形のテーブル名で作成されますね。
おりこうさんですね。

同じ事を "hogehoge" でやってみると "hogehoges" となった。
さらに "hogyhogy" でやってみると "hogyhogies" となった。

綴りの語尾数文字を見て判断してるんでしょうかね。
たまに意図しない変換になるかもしれませんので注意は、しておいた方が良さそうですね。
   
×

この広告は30日以上新しい記事の更新がないブログに表示されております。