Rails API - 投票应用、协会
Rails API - Voting app, associations
所以,我正在开发一个小型投票应用程序。我正在使用 Rails,但是 JSON API-only。
我想为每次投票创建选民 table - 以便每次投票都有相同的选民(这是针对当地社区的应用程序,其中选民将大部分保持 'static'),但最好有一个'presence list' 每次投票。
我已经创建了控制器 - scores 和 voters。现在:
您如何做到始终包含 相同的 选民名单,但存在布尔值?我添加了 voter_presence: boolean,并在路由中添加了类似的东西:
Rails.application.routes.draw do
resources :scores do
resources :voters
end
end
它应该可以解决关联问题 - 但我仍然有一个“每个得分都相同的列表”的问题。
class Score < ActiveRecord::Base
has_and_belongs_to_many :voters
attr_accessor :excluded_voter_ids
after_create :add_voters
... other code ...
def add_voters
Voter.where().not(id: excluded_voter_ids).find_each do |voter|
self.voters << voter
end
end
end
您还需要按照说明 here 设置 HABTM 协会
所以,我正在开发一个小型投票应用程序。我正在使用 Rails,但是 JSON API-only。 我想为每次投票创建选民 table - 以便每次投票都有相同的选民(这是针对当地社区的应用程序,其中选民将大部分保持 'static'),但最好有一个'presence list' 每次投票。
我已经创建了控制器 - scores 和 voters。现在:
您如何做到始终包含 相同的 选民名单,但存在布尔值?我添加了 voter_presence: boolean,并在路由中添加了类似的东西:
Rails.application.routes.draw do
resources :scores do
resources :voters
end
end
它应该可以解决关联问题 - 但我仍然有一个“每个得分都相同的列表”的问题。
class Score < ActiveRecord::Base
has_and_belongs_to_many :voters
attr_accessor :excluded_voter_ids
after_create :add_voters
... other code ...
def add_voters
Voter.where().not(id: excluded_voter_ids).find_each do |voter|
self.voters << voter
end
end
end
您还需要按照说明 here 设置 HABTM 协会