Использование импрессиониста с чарткиком - отображение user.articles.impressions на графике

Я использую импрессионистский драгоценный камень, чтобы захватить взгляды статьи. Пользователь может создать статью и просмотреть ее на своей панели инструментов. То, что я хочу сделать, - это отобразить график с использованием Chartkick, показывающий количество статей, созданных за день, комментариев за день и, что наиболее важно, по этому вопросу, количество показов за день статей пользователей (и только его), так что если У пользователя есть два показа на каждую статью, и у него есть две статьи, в этот день на диаграмме будет 4.

В моем шоу-действии я имею:

@articles = current_user.articles
@comments = @articles.comments

И на мой взгляд:

<%= area_chart [
   {name: "Articles", data: @articles.group_by_week(:created_at, format: "%B %d, %Y").count },
   {name: "Comments", data: @comments.group_by_week(:created_at, format: "%B %d, %Y").count },
   {name: "Impressions", data: @impressions.group_by_week(:created_at, format: "%B %d, %Y").count }
]%>

Я пробовал так много способов сделать это, собирая идентификаторы показов, но каждый раз, когда я делаю, я получаю "без блока"... вот так (и стараюсь не смеяться):

@article_impressions = []

@articles.each do |article|
  @impression = Impression.where(impressionable_id: article.id)
  if @impression.present?
    @article_impressions << [@impression.ids]
  end
end

Я также попытался просто вставить @impression в хеш, но опять же, "блок не указан". Я почти на 100% уверен, что я делаю это неправильно, и я немного идиот. Если бы кто-то мог помочь, это было бы очень ценно!

Благодарю.

0 ответов

Другие вопросы по тегам