Julianog12
unread,Nov 18, 2009, 5:09:27 AM11/18/09Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to rails-br
pessoal bom dia,
estou tendo uma grande dificuldade em passar meu form_builder para a
partial;
view
<%= observe_field "thelpdesk_ocorrencia_usuario", :url => { :action
=> 'carrega_centroc'},
:update => 'centro_custo',
:with => "'usuario='+value",
:on => 'change'
%>
<tr>
<th><%= f.label :centro_custo %></th>
<td><div id="insere_centro_custo"><%= render :partial =>
'campo_centro_custo', :object => @centrocustos , :locals => {:f => f}
%></div> </td>
</tr>
reparem que na view estou passando :locals => {:f => f}.
controller:
def carrega_centroc
@centrocustos = CentroCusto.find(:all,
:joins =>
"INNER JOIN usuario_centro "+
" on usuario_centro.centro_custo = centro_c.centro_custo "+
"and usuario_centro.usuario = '#{params[:usuario]}'",
:select =>
"centro_c.centro_custo, centro_c.descricao")
render :update do |page|
page.replace_html "insere_centro_custo", :partial =>
"campo_centro_custo", :object => @centrocustos
end
end
reparem que não estou passando :locals => {:f => f}, pois não tenho o
form_builder aqui no controller.
partial
<%= f.collection_select(nil,:centro_custo,
@centrocustos, :centro_custo, :descricao, {:prompt => ""} ) %>
preciso passar o form_builder para a partial, pois se não passar, na
hora da gravação o campo centro de custo não é gravado!!!.
Tipo assim, se na partial colocar assim:
<%= collection_select(nil,:centro_custo,
@centrocustos, :centro_custo, :descricao, {:prompt => ""} ) %>
sem o f na frente do collection_select, e na view onde esta esta linha
<td><div id="insere_centro_custo"><%= render :partial =>
'campo_centro_custo', :object => @centrocustos , :locals => {:f => f}
%></div> </td> tirar o :locas => {:f => f}
funciona na boa, só que dae na hora da gravação o campo centro de
custo não é gravado!!!
alguém tem uma solução para isto?