2014-10-10 3 views
2

У меня есть приложение Rails 3.2.14, где я пытаюсь использовать драгоценные камни chartkick и groupdate, чтобы создать некоторые диаграммы. Я установил оба драгоценных камня, и я пытаюсь выполнить некоторые тестовые запросы с консоли на моей модели Call.Rails groupdate gem pg error

Call.group_by_day(:created_at)

Я поднимаю исключение и получить следующее сообщение об ошибке:

Call Load (8.8ms) SELECT "calls".* FROM "calls" WHERE (created_at IS NOT NULL) GROUP BY (DATE_TRUNC('week', (created_at::timestamptz - INTERVAL '6 day' - INTERVAL '0' hour) AT TIME ZONE 'America/Chicago') + INTERVAL '6 day' + INTERVAL '0' hour) AT TIME ZONE 'America/Chicago' 
ActiveRecord::StatementInvalid: PG::Error: ERROR: column "calls.id" must appear in the GROUP BY clause or be used in an aggregate function 
LINE 1: SELECT "calls".* FROM "calls" WHERE (created_at IS NOT NULL... 
      ^
: SELECT "calls".* FROM "calls" WHERE (created_at IS NOT NULL) GROUP BY (DATE_TRUNC('week', (created_at::timestamptz - INTERVAL '6 day' - INTERVAL '0' hour) AT TIME ZONE 'America/Chicago') + INTERVAL '6 day' + INTERVAL '0' hour) AT TIME ZONE 'America/Chicago 

Есть ли что-то я должен сделать, чтобы сделать эту работу? Есть ли какая-то область, которую мне нужно создать, чтобы сделать эту работу? Я новичок в драгоценных камнях, поэтому любая помощь будет оценена по достоинству.

ответ

1

Видимо, я не называл это правильно.

Мне нужно было позвонить Call.group_by_day(:created_at).count, чтобы сделать эту работу.

+0

как насчет ассоциаций ??? – Hamdan

Смежные вопросы