Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 Formtastic嵌套模型表单字段(Rails 3)_Ruby On Rails_Ruby On Rails 3_Formtastic - Fatal编程技术网

Ruby on rails Formtastic嵌套模型表单字段(Rails 3)

Ruby on rails Formtastic嵌套模型表单字段(Rails 3),ruby-on-rails,ruby-on-rails-3,formtastic,Ruby On Rails,Ruby On Rails 3,Formtastic,下面是一个场景: 用户: has_one :company accepts_nested_attributes_for :company 控制器: @user = User.new @user.build_company 视图: register|u path do|form|%> 用户信息 公司信息 在浏览完网络之后,这似乎应该会起作用。然而,我得到的只是用户的输入。“语义字段:company”块根本不输出任何内容 我是否在这里遗漏了什么,或者这可能是与Formtastic有关的Rail

下面是一个场景:

用户:

has_one :company
accepts_nested_attributes_for :company
控制器:

@user = User.new
@user.build_company
视图:

register|u path do|form|%>
用户信息
公司信息
在浏览完网络之后,这似乎应该会起作用。然而,我得到的只是用户的输入。“语义字段:company”块根本不输出任何内容

我是否在这里遗漏了什么,或者这可能是与Formtastic有关的Rails 3 bug?

您需要对Rails 3块使用,而不是。因此,守则应为:

<%= semantic_form_for @user, :url => register_path do |form| %>

  <h2>User Information</h2>

  <%= form.inputs %>

  <h2>Company Information</h2>

  <%= form.semantic_fields_for :company do |company| %>
    <%= company.inputs %>
  <% end %>

  <%= form.buttons %>

<% end %>
register|u path do|form|%>
用户信息
公司信息

至于rails3的新语法,您应该在控制器中使用

@user.company.build

而不是


@user.build\u company

缺少一个字符。。。一定会喜欢的:哦,太谢谢你了!我花了一个多小时找这个。在铁路上测试了它。它是有效的,这是我写的一个控制器的例子:def new@realty=realty.new@realty.ownerships.build(:person\u id=>params[:person\u id])respond\u to do | format | format.html#new.html.erb end end end。build方法肯定被删除了。它对你有效,因为你的@realty拥有很多所有权。如果它有一个(比如OP),您需要使用@realty.build\u ownership
<%= semantic_form_for @user, :url => register_path do |form| %>

  <h2>User Information</h2>

  <%= form.inputs %>

  <h2>Company Information</h2>

  <%= form.semantic_fields_for :company do |company| %>
    <%= company.inputs %>
  <% end %>

  <%= form.buttons %>

<% end %>