Ruby on rails Rails API-投票应用程序、关联
因此,我正在开发一款小型投票应用程序。我使用的是Rails,但只作为jsonapi。 我想为每一次投票创建选民表——这样每一次投票都有相同的选民(这是一个适用于当地社区的应用程序,在其中选民将大部分保持“静态”),但最好为每一次投票都有一个“存在列表” 我已经创建了控制器-分数和选民。现在: 您如何做到始终包含相同的选民列表,但使用布尔表示?我已经添加了voter_presence:boolean,还向routes添加了类似的内容:Ruby on rails Rails API-投票应用程序、关联,ruby-on-rails,associations,rails-api,Ruby On Rails,Associations,Rails Api,因此,我正在开发一款小型投票应用程序。我使用的是Rails,但只作为jsonapi。 我想为每一次投票创建选民表——这样每一次投票都有相同的选民(这是一个适用于当地社区的应用程序,在其中选民将大部分保持“静态”),但最好为每一次投票都有一个“存在列表” 我已经创建了控制器-分数和选民。现在: 您如何做到始终包含相同的选民列表,但使用布尔表示?我已经添加了voter_presence:boolean,还向routes添加了类似的内容: Rails.application.routes.draw d
Rails.application.routes.draw do
resources :scores do
resources :voters
end
end
而且它应该在关联方面起到作用-但是我仍然有一个“每个分数都是相同的列表”的问题。类分数 self.voctors是否有投票的模式?否,我只在分数中添加了标记的长度(标记是投票),因此当对新问题进行投票时,新分数会添加到表中?是-根页面是“创建投票”-然后我们可以开始投票(完全“在场”)或编辑在场,保存并返回根目录,在那里我们可以开始投票。在乞讨时,分数“选票”是无效的。听起来你需要一张分数和选民之间的表格。这样每个分数都只有在场的选民。然后将抽象属性(如excluded\u vorter\u id
)和创建后回调(如add\u vorters
)添加到分数模型中,add\u vorters
)将迭代投票者并将其添加到HABTM关联中,除非它们位于excluded\u vorter\u id
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