寫入數據庫基本上我想繞過如何直接與軌道
def something=(string)
...
end
,做
create!(:something => "direct to database")
對於我有一個很難繞過這個功能某種原因(我在遷移中使用這個)。 感謝
寫入數據庫基本上我想繞過如何直接與軌道
def something=(string)
...
end
,做
create!(:something => "direct to database")
對於我有一個很難繞過這個功能某種原因(我在遷移中使用這個)。 感謝
model.update_column(:col, 'value')
instance.update_attribute(:something,"direct to database") # bypass validation
或者
instance.something = "direct to database"
instance.save(validation = false)
或者
sql = "UPDATE models SET something = 'direct to database' WHERE id = #{object.id}"
ActiveRecord::Base.connection.execute(sql)
的問題不在於驗證(其=覆蓋),那麼你的第二個選項將肯定是不行的。 sql可能只是最好的選擇,將盡快嘗試。謝謝 – montrealmike
http://apidock.com/rails/ActiveRecord/Persistence/update_column(僅適用於Rails 3.1,但這就是我使用的) – montrealmike