2016-07-07 46 views
0

因此,我正在爲希望將舊的mysql數據庫用於新站點的客戶端的項目工作。將滑軌模型與不同名稱的mysql數據庫表關聯

我無法更改數據庫中表的名稱,因爲其他應用程序使用相同的數據庫。我正在使用Rails來編寫新網站。

數據庫中表的當前名稱與Rails命名約定不匹配。有沒有辦法將模型「user.rb」與表名「tbl_user」關聯? (另外,我嘗試創建一個名爲「tbl_user」的.rb文件,但表名稱需要是「tbl_users」)。

感謝您的幫助!

回答

0

你可以做到這一點如下:

在模型文件user.rb,你把這個行:

class User < ActiveRecord::Base 
    self.table_name 'tbl_user' 
end 

而且模型User都將映射到表tbl_user

+0

謝謝你的響應!在我改變我的user.rb文件之後,就像你說的,我去了consle並嘗試了User.new,並得到以下錯誤(任何想法爲什麼?):User.new ArgumentError:錯誤的參數數量(給定1,預期0 ) from /usr/local/rvm/gems/ruby-2.3.0/gems/activerecord-5.0.0/lib/active_record/model_schema.rb:134:in'table_name' from/home/ubuntu/workspace/sample -app/app/models/user.rb:2:在'' from /home/ubuntu/workspace/sample-app/app/models/user.rb:1:in'' – sb4f1

+0

啊,哈,我檢查了文檔,代碼應該讀取self.table_name ='tbl_user'。感謝您讓我走上正軌! – sb4f1

+0

@ sb4f1如果我的回答對您有幫助,您可以將我的答案標記爲有用答案。 –

相關問題