фрагмент формы рендеринга formtastic

Есть ли способ визуализировать фрагменты форм с помощью formtastic?

У меня есть несколько флажков в моей форме, которые исходят из отношений "один ко многим". Итак, давайте предположим, что пользовательская форма имеет отношение «один ко многим ролям». Моя формальная форма будет выглядеть так

  <%= semantic_form_for @user] do |f| %>
    <%= f.inputs "Details" do %>
      <%= f.input :name %>
      <%= f.input :lastname %>
    <% end %>
    <%= f.inputs "Roles" do %>
      <%= f.input :roles, :as => 'checkbox' %>
    <% end %>
  <% end %>

Теперь строка:

<%= f.input :roles, :as => 'checkbox' %>

Будет выводить флажки для одного ко многим. Это прекрасно работает. Но теперь мне нужно добиться некоторого ActionController, который выводит только флажки... без формы и набора полей. Чтобы я мог использовать его в своих вызовах Ajax и динамически обновлять набор полей «Роли» со свежими отрисованными флажками.

Любые идеи? Я застрял и не могу понять, как это решить.


person user711643    schedule 11.12.2011    source источник


Ответы (1)


Я не знаю, была ли у кого-то такая потребность... в любом случае, поскольку никто не ответил, я нашел решение самостоятельно. Для рендеринга фрагментов формы в файле представления (или частичного представления):

<% ref = nil %>
<% semantic_form_for [:admin, @user] do |f| %>
  <% ref = f %>
<% end %>
<%= ref.input :roles, :as => :check_boxes, :required => false %>

Обратите внимание, что только последняя строка действительно что-то выводит, а предыдущие строки — нет.

Опытный Rubyst или, может быть, даже новички могут посмеяться над этим... но я нуб (Ruby), и это лучшее, что я мог придумать. Если кто-нибудь из вас может сказать лучший способ сделать это, я буду более чем счастлив узнать.

person user711643    schedule 15.12.2011