After digging around: I think, yes, escaped ones should work but apparently weird things seem to happen with Rails---it turns out to not be a Haml issue. e.g. passing to a Rails app:
http://myhost.com/somecontroller/someaction?param1=key1¶m2=key2¶m3=key3 I get keys: param1=key1 param2=key2 param3=key3 Awesome. However http://myhost.com/somecontroller/someaction?param1=key1&param2=key2&param3=key3 results in: amp= param1=key1 param2=key2 param3=key3 And, back to the original problem I was having, I found the answer in the documentation....and it's not Haml either. It turns out that url_for() in ActionController::Base is different than url_for() in ActionView::Helpers::UrlHelper. The latter escapes ampersands. To make it *not* escape them you have to pass an additional param: :escape => false (The example code I had posted was also erroneous. I was reading wrong output from some page source. Both the ERb and Haml views did generate the escaped &.) -- Amy On Thu, May 6, 2010 at 3:29 PM, Nathan Weizenbaum <[email protected]> wrote: > Unescaped ampersands are never valid in HTML properties. Escaped ones > should work just as well, and do conform to the spec. > On Thu, May 6, 2010 at 2:42 PM, Amy L <[email protected]> wrote: > >> Gah. The first example should have read: >> >> <a href="<%= url_for(:controller => 'somecontroller', :action => >> 'someaction', :foo => 'bar', :moo => 'cow') %>">Click me</a> >> >> On Thu, May 6, 2010 at 2:41 PM, Amy L <[email protected]> wrote: >> >>> ... >>> >> I'm using Rails 2.3.5. And when I write into an ERb template: >>> >>> <a href="url_for(:controller => 'somecontroller', :action => >>> 'someaction', :foo => 'bar', :moo => 'cow')">Click me</a> >>> ... >>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "Haml" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected] <haml%[email protected]>. >> For more options, visit this group at >> http://groups.google.com/group/haml?hl=en. >> > > -- > You received this message because you are subscribed to the Google Groups > "Haml" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected] <haml%[email protected]>. > For more options, visit this group at > http://groups.google.com/group/haml?hl=en. > -- You received this message because you are subscribed to the Google Groups "Haml" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/haml?hl=en.
