你可以像这样创建和初始化一个ActiveRecord对象吗?我需要一个连接来使用ActiveRecordObject.new吗?
exercise = Exercise.new
exercise.name = "foo"
exercise.description = "bar"
exercise.unit_id = 123
我试图做到这一点,我不断收到
ActiveRecord::ConnectionNotEstablished - ActiveRecord::ConnectionNotEstablished:
/usr/lib/ruby/1.8/active_record/connection_adapters/abstract/connection_pool.rb:326:in `retrieve_connection'
/usr/lib/ruby/1.8/active_record/connection_adapters/abstract/connection_specification.rb:123:in `retrieve_connection'
/usr/lib/ruby/1.8/active_record/connection_adapters/abstract/connection_specification.rb:115:in `connection'
/usr/lib/ruby/1.8/active_record/base.rb:1271:in `columns'
/usr/lib/ruby/1.8/active_record/base.rb:3014:in `attributes_from_column_definition_without_lock'
/usr/lib/ruby/1.8/active_record/locking/optimistic.rb:55:in `attributes_from_column_definition'
/usr/lib/ruby/1.8/active_record/base.rb:2434:in `initialize'
main.rb:14:in `new'
我只是想创建和初始化,然后调用对象的一个方法.save
。如果我错误地解决了这个问题,请告诉我。
+1迄今为止唯一回答问题的答案。 :) – 2011-03-08 05:43:43
感谢您的答案。我创建了一个save_to_database()方法来打开一个连接并将该对象保存到正确的表中。我没有意识到AR需要阅读表格以了解它具有哪些列。 – 2011-03-08 12:44:11