【问题标题】:ActiveAdmin ::Show 4 textbox in active admin using has_many relationshipActiveAdmin ::使用has_many关系在活动管理员中显示4个文本框
【发布时间】:2015-06-22 05:58:48
【问题描述】:

我有一个带有问题的投票表,每个问题都有 4 个答案,即 has_many 与答案表的关系

   class Poll < ActiveRecord::Base
         has_many :answer
    end

我的答案模型

class Answer < ActiveRecord::Base
     belongs_to :poll,  :class_name => "Poll", :foreign_key => "question_id"
end

我的活动管理表单是

   form :html => {:validate => true} do |f|
    f.inputs "Polls" do
      f.input :question
      f.has_many :answer, :sortable => :priority do |ff|
        ff.input :question[]
      end 

      f.input :status,as:  'hidden',:input_html => { :value => f.object.status.present? ?  f.object.status : 'Unpublished' }
      f.input :position,as:  'hidden',:input_html => { :value =>  Poll.count().to_i + 1}
    end
    f.actions
  end

我只想在表单中显示 4 个答案文本框,我该怎么做

【问题讨论】:

  • 上面显示了什么?
  • has_many :answers注意复数。如果你这样做 poll.answer 并得到一个数组,那是一个真正的 WTF 时刻。
  • 我想在表单中显示 4 个问题文本框,我想在 f.has_many 下编辑我的代码:answer, :sortable => :priority do |ff| ff.input :question[] end

标签: ruby-on-rails gem activeadmin


【解决方案1】:

将以下内容添加到您的投票控制器-

def new
  @poll = Poll.new
  4.times do
    @poll.answers.build
  end
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多