2014-02-05 2 views
1

Проблема заключается в том:Есть ли способ визуализировать формы помощников динамически через ajax?

мне нужно сделать коллекцию флажков через AJAX, так что у меня есть это:

$("#imovel_tipo_imovel_id").on "change", -> 
    $.get("/admin/caracteristicas", { tipo_imovel_id: $(this).val() }) 

Когда я меняю выберите значение, то оно будет ударилась контроллер и сделать назад коллекцию флажков. Проблема в том, что частичное, которое мне нужно сделать, должно находиться внутри формы и отправляться обратно на другой контроллер.

= simple_nested_form_for @imovel do |f| 
    .caracteristicas 
    = render 'my_partial', f: f 

парциальное

= f.simple_fields_for :caracteristicas_imovel do |c| 
    = c.collection_check_boxes :caracteristica_id_in, @caracteristicas, :id, :descricao 

js.erb Отвечает:

$(".caracteristicas").html("<%= render 'my_partial' %>") 

Контроллер:

def index 
    respond_to do |format| 
    format.js { @caracteristicas = Caracteristica.where(tipo_imovel_id: params[:tipo_imovel_id]) } 
    end 
end 

Вы видите? Поэтому, когда я пытаюсь сделать свой частичный через ajax, он жалуется, что он не имеет переменной f. Я делаю это правильно? Есть ли способ лучше?

ответ

0

Я бы просто использовал фактический html здесь. Попробуйте выполнить эту страницу с полным кодом, проверив его и просто скопируйте/вставив визуализированный html в частичный. Я уверен, что есть способ взломать его с помощью помощников, но это просто кажется проще.

Смежные вопросы