Модель отправляет два одинаковых SQL, но два разных результата - PullRequest
0 голосов
/ 10 января 2012

У меня есть приложение rails с ассоциацией между Account и Record. В аккаунте много записей. Я запускаю код с RSpec.

У меня есть эта функция в классе Account:

data = records
puts data.to_sql
puts data.size

У меня есть такой результат:

SELECT "records".* FROM "records"  WHERE "records"."account_id" = 1
4

Но когда у меня есть эта функция:

data = Record.where(:account_id => 1)
puts data.to_sql
puts data.size

У меня есть такой результат:

SELECT "records".* FROM "records"  WHERE "records"."account_id" = 1
0

Это точно такой же запрос, но у меня нет того же результата. Почему ???

Наконец, я хочу сделать что-то вроде этого:

records.group(:category_id)

У меня все записи должны быть сгруппированы по категориям, но у меня пустой результат.

У вас есть решение для меня?

1 Ответ

0 голосов
/ 10 января 2012

Я нашел решение.

В моем spec-файле я изменил это:

before {@account = Account.create}

для этого:

before {@account = Factory.create(:account)}

Моя учетная запись была недействительной. Я не понимаю настоящей проблемы, но она работает.

Спасибо за все.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...