iT邦幫忙

DAY 22
1

Ruby on Rails 實戰聖經 - 初心者的30天學習記錄系列 第 22

Ruby on Rails (22) - 建立專案及Model、Migration

  • 分享至 

  • xImage
  •  

先和大家分享一個經驗,昨天在建立專案及model時,持續發生錯誤,錯誤訊息如下:

The name 'Person' is either already used in your application or reserved by Ruby on Rails. Please choose an alternative and run this generator again.

後來在stackoverflow找到了答案:

http://stackoverflow.com/questions/19777093/name-is-already-used-or-reserved-by-ruby-on-rails

原來

model名稱不可與專案名稱相同

竟然到現在才知道⋯⋯真是太蠢了orz

原因是因為在建立專案時,rails已經自動產生了一個和專案名稱相同的module,所以會發生重複命名的錯誤。

所以如果我專案名稱是User,就不能建立一個叫user的model⋯⋯

好吧,讓我們重新來過:

rails new Member

rails g model user name:string email:string   

這樣就對了啦!

Migration(遷移)

Migration是在rails中,幫我們管理、更改及建立資料庫的執行檔。像在上面我們建立model的時候,rails就會自動產生一個migration執行檔。

它的檔案路徑及名稱如下:

db/migrate/20141021160437_create_users.rb

前面是系統自帶的時間戳印,後面則是這個執行檔要設定的class屬性。

讓我們看看它的內容:

class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name
      t.string :email

      t.timestamps
    end
  end
end

上一篇
Ruby on Rails (21) - 實做一個具會員功能的網站
下一篇
Ruby on Rails (23) - 修改User Model
系列文
Ruby on Rails 實戰聖經 - 初心者的30天學習記錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言