2017-04-22 64 views
0
Rails 3.2 

我有一個表:創建一個Rails模型來管理表

subscriptions_locations 

有兩列:

subscription_id 
location_id 

但目前沒有應用程序的一部分,我可以通過對其進行管理ActiveRecord,如果我創建一個模型subscriptions_location.rb:

class SubscriptionsLocation < ActiveRecord::Base 
    attr_accessible :subscription_id, :location_id 
end 

,隨時隨地我想添加或刪除,我可以這樣做:

SubscriptionsLocation.find_by_subscription_id("some_subscription_id").destroy 

sub_location = SubscriptionsLocation.new(:subscription_id => "something", :location_id => "something") 
sub_location.save! 

回答

1

這是正確的,你把所有的點正確。

但是你甚至不需要這個部分,因爲不管你是否沒有用rails創建表,屬性都是可訪問的。

attr_accessible :subscription_id, :location_id 

只是記住,如果以後需要將應用程序遷移到生產,該表將不會在遷移,你總是需要在這種情況下手動添加此表。

也許你可以創建一個驗證創建表

create_table :subscriptions_locations if !(table_exists? :subscriptions_locations) 
+0

我已經添加了遷移文件遷移 – EastsideDeveloper