Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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/2/ruby-on-rails/60.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
Jquery 使用';链接到添加字段帮助器';_Jquery_Ruby On Rails_Nested Forms - Fatal编程技术网

Jquery 使用';链接到添加字段帮助器';

Jquery 使用';链接到添加字段帮助器';,jquery,ruby-on-rails,nested-forms,Jquery,Ruby On Rails,Nested Forms,我在RailsCasts嵌套模型表单第2部分示例中创建了一个嵌套模型,并将其用于Rails 3和JQuery。当前,用户可以创建一个新项目并单击链接以添加新任务,在每个新任务中,单击一个链接以允许他们向每个任务添加新的工作分配。以下是创建新任务的链接(创建新工作分配的链接类似): 它的工作原理是这样的:通过单击链接,可以通过JQuery添加html,JQuery显示任务名称的表单字段和允许用户向任务添加新工作分配的链接 我想做的是让分配表单显示在任务名称字段旁边,这样用户就不需要单击其他链接来为

我在RailsCasts嵌套模型表单第2部分示例中创建了一个嵌套模型,并将其用于Rails 3和JQuery。当前,用户可以创建一个新项目并单击链接以添加新任务,在每个新任务中,单击一个链接以允许他们向每个任务添加新的工作分配。以下是创建新任务的链接(创建新工作分配的链接类似):

它的工作原理是这样的:通过单击链接,可以通过JQuery添加html,JQuery显示任务名称的表单字段和允许用户向任务添加新工作分配的链接

我想做的是让分配表单显示在任务名称字段旁边,这样用户就不需要单击其他链接来为每个任务添加新的分配。当页面第一次通过项目控制器加载时,我可以完成这一点:

    1.times do
   task = @product.tasks.build
   1.times { task.assignments.build}
end
但是,因为我使用JQuery添加和删除HTML,所以在“添加”新任务时不会调用控制器,也不会生成表单

在创建新任务字段时,是否有方法自动“构建”嵌套的分配字段(从任务部分中)

以下是我对任务表单的部分说明,该表单是在用户单击表单中的“新建任务”链接时创建的:

<div class = "fields">
<%= f.label :name, "Task name"%>
<%= link_to_remove_fields "remove", f %><br />
<%= f.text_field :name %>



<% f.fields_for :assignments do |builder| %>
    <%= render 'assignment_fields', :f => builder %>
<% end %>

<p><%= link_to_add_fields "Add assignments", f, :assignments %></p>


建筑商%>


我也有类似的情况,我(和你一样)正在寻找解决方案。 从Rails 3源代码中,我发现:

activerecord/lib/active\u record/nested\u attributes.rb:

# === One-to-many
#
# Consider a member that has a number of posts:
#
#   class Member < ActiveRecord::Base
#     has_many :posts
#     accepts_nested_attributes_for :posts
#   end
#
# You can now set or update attributes on an associated post model through
# the attribute hash.
#
# For each hash that does _not_ have an <tt>id</tt> key a new record will
# be instantiated, unless the hash also contains a <tt>_destroy</tt> key
# that evaluates to +true+.
#===一对多
#
(a)考虑具有多个职位的成员:
#
#类成员

我希望这能给你一些想法。

我也有类似的情况,我目前(和你一样)正在寻找解决方案。 从Rails 3源代码中,我发现:

activerecord/lib/active\u record/nested\u attributes.rb:

# === One-to-many
#
# Consider a member that has a number of posts:
#
#   class Member < ActiveRecord::Base
#     has_many :posts
#     accepts_nested_attributes_for :posts
#   end
#
# You can now set or update attributes on an associated post model through
# the attribute hash.
#
# For each hash that does _not_ have an <tt>id</tt> key a new record will
# be instantiated, unless the hash also contains a <tt>_destroy</tt> key
# that evaluates to +true+.
#===一对多
#
(a)考虑具有多个职位的成员:
#
#类成员

我希望这能为您提供一些想法。

创建任务表单后,您可以使用jQuery模拟单击添加工作分配链接。这样,您就完全不依赖rails控制器

after_create_handler = function() { $('assignment add link identifier').click() }

创建任务表单后,您可以使用jQuery模拟单击AddAssignments链接。这样,您就完全不依赖rails控制器

after_create_handler = function() { $('assignment add link identifier').click() }

不确定您是否仍在寻找答案,但有一个修订的railscast在此我还建议使用gem来处理嵌套表单部件。不确定您是否仍在寻找答案,但有一个修订的railscast在此我还建议使用gem来处理嵌套表单部件。