Problem with block helpers and JavaScript templates after Rails 3 upgrade -


i have application i'm upgrading rails 2.3 rails 3 uses combination of helpers , javascript templates not working after upgrade. have following code in view partial:

  <%= content_for :jstemplates -%>   <%= "var serviceoverride='#{generate_template(customer_form, :serviceoverrides).html_safe}'" %>   <%= "var clientimage='#{generate_template(customer_form, :customer_images).html_safe}'" %>   <%= "var formula='#{generate_template(customer_form, :formulas).html_safe}'" %>   <% end -%> 

that calls generate_template helper:

def generate_template(form_builder, method, options = {})   escape_javascript generate_html(form_builder, method, options) end  def generate_html(form_builder, method, options = {})   options[:object] ||= form_builder.object.class.reflect_on_association(method).klass.new   options[:partial] ||= method.to_s.singularize   options[:form_builder_local] ||= :f      form_builder.fields_for(method, options[:object], :child_index => 'new_record') |f|     render(:partial => options[:partial], :locals => { options[:form_builder_local] => f })   end end 

and view partial rendered 1 of standard controller views. problem javascript output on rendered page html escaped , directly rendered on page. worked correctly in rails 2.3.x , broke in rails 3, suspect change in behavior of <% %> block style helpers.

my problem cannot jstemplates render unescaped. i've looked changes in block style helpers , tried ensuring content generating blocks using <%= %>, using <%=raw %> function, adding .html_safe strings , on. seems i'm missing basic.

any appreciated.

chris

i found answer. apparently had raw blocks in wrong place. change fixed it:

<%= content_for :jstemplates -%>   <%=raw "var serviceoverride='#{generate_template(customer_form, :serviceoverrides).html_safe}'" %>   <%=raw "var clientimage='#{generate_template(customer_form, :customer_images).html_safe}'" %>   <%=raw "var formula='#{generate_template(customer_form, :formulas).html_safe}'" %> <% end -%> 

Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -