我正在使用Ruby on Rails 3,我想解决计数数组中ActiveRecord实例的问题。计数数组中的ActiveRecord实例时遇到问题
我有这样的代码
data = Account.where({:name => "Test_name", :city => "Test_city"}).limit(10)
的data
调试是
#<Account:0x000001029d2da0>#<Account:0x000001029d2c60>#<Account:0x000001029d2bc0>#<Account:0x000001029d2b20>
的data
检查是
"[#<Account name: \"Test_name\", city: \"Test_city\">, #<Account … >, #<Account id… >, …]"
怀疑:## < ...>应该是类似#<Account...>,#<Account...>,<...>
(注意逗号)?
如果在我的代码我用下面的
data_count = data.count
的data_count
是
nil
为什么nil
?我应该如何计算帐户?
- 如果我使用
result = data.class
的result
调试是nil
,但如果我用result = data.class
调试是"{\"inheritable_attributes\":{}}"
。 - 如果我使用
Account.find_by_name("Test_name")
而不是Account.where(...)
,我会得到与上面相同的结果。
我无法复制这个。 – 2011-03-11 06:51:10
@安德鲁马歇尔为什么? : - \ – user502052 2011-03-11 06:55:40
当我在我自己的项目中的某个模型上完成这项工作时,我从'count'中得到预期结果。请在Rails控制台中运行您的代码,并从那里准确地发布您的会话。 – 2011-03-11 07:00:11