Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails API-投票应用程序、关联_Ruby On Rails_Associations_Rails Api - Fatal编程技术网

Ruby on rails Rails API-投票应用程序、关联

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,但只作为jsonapi。 我想为每一次投票创建选民表——这样每一次投票都有相同的选民(这是一个适用于当地社区的应用程序,在其中选民将大部分保持“静态”),但最好为每一次投票都有一个“存在列表”

我已经创建了控制器-分数选民。现在:

您如何做到始终包含相同的选民列表,但使用布尔表示?我已经添加了voter_presence:boolean,还向routes添加了类似的内容:

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