#<Poll:0x007f0a1c2610b0>[Chartkick] 的未定义方法“组”
undefined method `group' for #<Poll:0x007f0a1c2610b0>[Chartkick]
我创建了一个迷你投票游戏,我想在饼图中显示用户的投票。我使用 Chartkick 来做到这一点,我的代码在这里:
<div class="form-group">
<%= content_tag(:label) do %>
<% unless current_user.voted_for?(@poll) %>
<%= radio_button_tag 'vote_option[id]', option.id %>
<% end %>
<%= option.title %>
<% end %>
<%= visualize_votes_for option %>
<%= pie_chart @poll.group(:title).count('votes') %>
</div>
我希望相应地显示 option.title
和 option.votes
。这是一个 vote_option.rb
模型:
class VoteOption < ActiveRecord::Base
belongs_to :poll
has_many :votes, dependent: :destroy
has_many :users, through: :votes
validates :title, presence: true
end
这是我得到的错误:
ActionView::Template::Error (undefined method `group' for #<Poll:0x007f0a1c2610b0>)
对这个问题有什么想法吗?
已解决
经过几个小时的搜索,我发现了我的错误:我们不能在模型的实例上调用 .group,我们必须在模型上调用它 class 所以我得到这个错误的原因。
我创建了一个迷你投票游戏,我想在饼图中显示用户的投票。我使用 Chartkick 来做到这一点,我的代码在这里:
<div class="form-group">
<%= content_tag(:label) do %>
<% unless current_user.voted_for?(@poll) %>
<%= radio_button_tag 'vote_option[id]', option.id %>
<% end %>
<%= option.title %>
<% end %>
<%= visualize_votes_for option %>
<%= pie_chart @poll.group(:title).count('votes') %>
</div>
我希望相应地显示 option.title
和 option.votes
。这是一个 vote_option.rb
模型:
class VoteOption < ActiveRecord::Base
belongs_to :poll
has_many :votes, dependent: :destroy
has_many :users, through: :votes
validates :title, presence: true
end
这是我得到的错误:
ActionView::Template::Error (undefined method `group' for #<Poll:0x007f0a1c2610b0>)
对这个问题有什么想法吗?
已解决 经过几个小时的搜索,我发现了我的错误:我们不能在模型的实例上调用 .group,我们必须在模型上调用它 class 所以我得到这个错误的原因。