Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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 为单个窗体在Rails中插入多行_Ruby_Ruby On Rails 4_Heroku Postgres - Fatal编程技术网

Ruby 为单个窗体在Rails中插入多行

Ruby 为单个窗体在Rails中插入多行,ruby,ruby-on-rails-4,heroku-postgres,Ruby,Ruby On Rails 4,Heroku Postgres,此表单中有三个字段: employee project project 字段project出现两次,因此我希望在本例中创建两条记录。如果我输入值: employee: John Doe project: Project_1 project: Project_2 我想要模型中的两张唱片: employee: John Doe; project: Project_1 employee: John Doe; project: Project_2 这是一种观点: <%= simp

此表单中有三个字段:

employee
project
project
字段
project
出现两次,因此我希望在本例中创建两条记录。如果我输入值:

employee: John Doe  
project: Project_1  
project: Project_2
我想要模型中的两张唱片:

employee: John Doe; project: Project_1  
employee: John Doe; project: Project_2
这是一种观点:

<%= simple_form_for(@source) do |f| %>
<div class="form-group">
  <%= f.label :employee %>
  <%= f.text_field :employee, class: "form-control" %>
</div>
<div class="form-group">
  <%= f.input :project, class: "form-control" %>
  <%= f.input :project, class: "form-control" %>
</div>
<% end %>

任何帮助都将不胜感激。

在控制器中,您应该与两个项目一起构建模型,然后使用表单helper
fields\u for
,它将呈现两个项目字段

您的_controller.rb

对于视图,我不知道
simple\u form
的行为,但基本上

views/your_views/new.html.erb


在控制器中,您应该与两个项目一起构建模型,然后使用表单帮助器
fields\u for
,它将呈现两个项目字段

您的_controller.rb

对于视图,我不知道
simple\u form
的行为,但基本上

views/your_views/new.html.erb


我不确定这里要问的问题是什么?@laughingpine因此表单有1个文本字段作为“雇员”字段,第2和第3个字段都是“项目”。提交表单时,我希望数据库中有两条记录,其中“employee”值重复。欢迎使用Stack Overflow。没有必要为Rails的子版本创建标记。看看每个网站的关注者数量,你会发现哪一个会给你带来最大的可见性。另外,请仔细阅读其他问题和答案,并尝试使用与问题文本类似的格式。Stack Overflow基本上是一本编程问答的百科全书,就像一本资源书,有一个一致的外观和感觉是很好的。我不确定这里要问的问题是什么?@laughingpine因此表单有1个文本字段用于“employee”字段,第2和第3个字段都是“project”。提交表单时,我希望数据库中有两条记录,其中“employee”值重复。欢迎使用Stack Overflow。没有必要为Rails的子版本创建标记。看看每个网站的关注者数量,你会发现哪一个会给你带来最大的可见性。另外,请仔细阅读其他问题和答案,并尝试使用与问题文本类似的格式。Stack Overflow基本上是一本编程问答的百科全书,就像一本资源书,具有一致的外观和感觉是很好的。
def create
@source = Source.new(source_params)
  if @source.save
    redirect_to @source, notice: 'Source was successfully created.'
  else
    render action: 'new'
  end
end
class YourController
  def your_action_new
    @object = YourModel.new
    2.times{ @object.projects.build }
  end
end
<!-- blabla -->
<%= f.fields_for :project do |project_f| %>
  <div class="project">
    <%= project_f.text_field(:name) %>
    <%= project_f.text_field(:description) %>
    ...
  </div>
<% end %>
class YourModel

  has_many :projects, dependent: :destroy
  accept_nested_attributes_for :projects

end

class YourController

  def your_model_params
    params.require(:your_model).permit(blabla, projects_attributes: [:id, :name, :blabla, ...])
    end
  end
end