Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Formulario Dinamico com RoR

Eu tenho um formulário de Pagamento de um sistema financeiro onde existe um campo para Categoria do Pagamento. O campo de Categoria está referenciado no Pagamento( Uso o Select para setar categorias existentes). O que eu quero fazer é na mesma pagina onde seleciono a categoria eu possa ter um botão onde eu cadastre uma categoria extra sem sair da pagina de pagamento. Gostaria de um norte para que eu possa implementar isso em meu sistema. Grato desde já!

1 resposta
solução!

Oi, Pedro, tudo bem?

Se você não quiser sair da página você pode usar a parte de Ajax e Javascript com Rails, você pode por exemplo ao clicar no botão mostrar um formulário (se tiver usando Bootstrap dá uma olhada em Modais) e aí nesse novo formulário você vai fazer algo como:

<%= form_for @category, url: category_path(@category), remote: true do |f| %>  
  <%= f.text_field :name %>
  <%= f.submit 'Enviar' %>
<% end %>

No seu controller você faria algumas modificações para ele suportar essa requisição Ajax.

def create
 @category = Category.new(params[:category])
  respond_to do |format|
    if @category.save
      format.js { render 'alguma_pagina' }
    else
      format.js { render 'new' }
    end      
end

Então que dar recarregar sua coleção de categorias (ou na página mas perderia o que está preenchido).

Você pode fazer isso diretamente via Ajax também só comunicando com rotas do Rails pelo Javascript direto.

Ou uma alternativa mais simples seria você criar trocar de página e depois que voltar pra página anterior, também é uma boa opção.

Bons estudos!

Boa fonte de leitura: http://edgeguides.rubyonrails.org/working_with_javascript_in_rails.html