Таким образом, вот сценарий:
Пользователь:
has_one :company
accepts_nested_attributes_for :company
Контроллер:
@user = User.new
@user.build_company
Посмотреть:
<% 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 %>
После обыска сети это Кажется, что должно работать. Однако все, что я получаю, является вводами данных пользователем. "semantic_fields_for: компания" блок не производит ничего вообще...
Я пропускаю что-то здесь, или это - возможно, направляющие 3 ошибки, чтобы сделать с Formtastic?
Вам нужно использовать "<% =%>" с блоками 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 %>
что касается нового синтаксиса rails3, в вашем контроллере вы должны использовать
@user.company.build
вместо
@user.build_company