1. 程式人生 > >rails中建立model 和 修改欄位的方法

rails中建立model 和 修改欄位的方法

轉自:http://blog.csdn.net/remote_roamer/article/details/7977294

1. 新建一個model .用如下命令 

  1. rails g model category1 code:string name:string memo:string deleted:boolean user_id:integer
  1. rake db:migrate


其中 category1 是表單名稱,rails會在資料庫裡面建立一個後面加複數 形式的 表單 category1s .並且多了 id和2個時間戳 欄位。

2. 如果我們要修改已經建立好的表單中的欄位型別 需要以下2個步驟 a. 利用rails命令來生成修改指令碼 

rails g migration ChangePaymentFieldForQualificationTemplates

其中 Payment是欄位名稱。是需要修改的欄位名稱 QualificationTemplates 是 model名稱,在資料庫裡面是 qualification_templates (複數形式)的表單名

然後rails 會生成這樣一個 指令碼檔案

20120913182619_change_payment_field_for_qualification_templates.rb

b.然後在這個檔案裡面修改內容

  1. class ChangePaymentFieldForQualificationTemplates < ActiveRecord::Migration  
  2.   def up  
  3.     change_column :qualification_templates:payment:decimal:precision => 5, :scale => 2  
  4.   end
  5.   def down  
  6.     change_column :qualification_templates,  :payment:decimal
  7.     #remove_column
  8.     #add_column
  9. end
alificationTemplates 是model名稱,在資料庫裡面是 qualification_templates(複數形式)的表單 def down 裡面是定義  以後回滾要做的事情 def up 是定義修改要做的工作 其他的一些方法: remove_column:刪除欄位 rename_column :更改欄位的名稱
change_column  :修改欄位的型別 add_column:增加欄位