HI,
i''m trying to write a helper that replaces link_to_remote that
accepts a block but it gets a compile error in the template:
I don''t know what I''m doing wrong... TIA
# application_helper.rb
def link_block_to_remote( options = {}, html_options = {}, &block)
concat(link_to_remote(capture(&block), options, html_options),
block.binding)
end
# in template
<% link_block_to_remote
{:url => { :action => :start_login } },
{ :href => url_for( { :action => :start_login }), #
when degraded
:class => "home-box home-box2",
:id => "home-login-container"} do %>
<h1>LOGIN</h1>
<p>Already have an account?</p>
<p>LOG IN NOW</p>
<% end %>
# the error I get is a compile error
compile error
syntax error, unexpected tASSOC, expecting ''}''
_erbout.concat " "; link_block_to_remote { :url =>
{ :action => :start_login } },
^
syntax error, unexpected '','', expecting kEND
_erbout.concat " "; link_block_to_remote { :url =>
{ :action => :start_login } },
^
syntax error, unexpected kDO, expecting kEND
:id => "home-login-container"} do ;
_erbout.concat "\n"
# if i remove the html_options from the call, and remove the braces,
it is ok
<% link_block_to_remote :url => { :action => :start_login } do
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---
does it help if you use parenthesises around for
link_block_to_remote() ? (which by the way is good style)
<% link_block_to_remote
(
{:url => { :action => :start_login } },
{ :href => url_for( { :action => :start_login }), #when
degraded
:class => "home-box home-box2",
:id => "home-login-container"}
) do %>
<h1>LOGIN</h1>
<p>Already have an account?</p>
<p>LOG IN NOW</p>
<% end %>
marcel
On 28 Mai, 08:56, Jonathan Linowes
<lino...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
wrote:> HI,
> i''m trying to write a helper that replaces link_to_remote that
> accepts a block but it gets a compile error in the template:
> I don''t know what I''m doing wrong... TIA
>
> # application_helper.rb
> def link_block_to_remote( options = {}, html_options = {}, &block)
> concat(link_to_remote(capture(&block), options, html_options),
> block.binding)
> end
>
> # in template
> <% link_block_to_remote
> {:url => { :action => :start_login } },
> { :href => url_for( { :action => :start_login }), #
> when degraded
> :class => "home-box home-box2",
> :id => "home-login-container"} do %>
> <h1>LOGIN</h1>
> <p>Already have an account?</p>
> <p>LOG IN NOW</p>
> <% end %>
>
> # the error I get is a compile error
>
> compile error
> syntax error, unexpected tASSOC, expecting ''}''
> _erbout.concat " "; link_block_to_remote { :url =>
> { :action => :start_login } },
> ^
> syntax error, unexpected '','', expecting kEND
> _erbout.concat " "; link_block_to_remote { :url =>
> { :action => :start_login } },
>
> ^
> syntax error, unexpected kDO, expecting kEND
> :id => "home-login-container"}
do ;
> _erbout.concat "\n"
>
> # if i remove the html_options from the call, and remove the braces,
> it is ok
>
> <% link_block_to_remote :url => { :action => :start_login } do
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---
yep that took care of it, thanks (my first helper using &block :)) On May 28, 5:36 am, lanzm <marcel.l...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> does it help if you use parenthesises around for > link_block_to_remote() ? (which by the way is good style) > > <% link_block_to_remote > ( > {:url => { :action => :start_login } }, > { :href => url_for( { :action => :start_login }), #when > degraded > :class => "home-box home-box2", > :id => "home-login-container"} > ) do %> > <h1>LOGIN</h1> > <p>Already have an account?</p> > <p>LOG IN NOW</p> > <% end %> > > marcel > > On 28 Mai, 08:56, Jonathan Linowes <lino...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > HI, > > i''m trying to write a helper that replaces link_to_remote that > > accepts a block but it gets a compile error in the template: > > I don''t know what I''m doing wrong... TIA > > > # application_helper.rb > > def link_block_to_remote( options = {}, html_options = {}, &block) > > concat(link_to_remote(capture(&block), options, html_options), > > block.binding) > > end > > > # in template > > <% link_block_to_remote > > {:url => { :action => :start_login } }, > > { :href => url_for( { :action => :start_login }), # > > when degraded > > :class => "home-box home-box2", > > :id => "home-login-container"} do %> > > <h1>LOGIN</h1> > > <p>Already have an account?</p> > > <p>LOG IN NOW</p> > > <% end %> > > > # the error I get is a compile error > > > compile error > > syntax error, unexpected tASSOC, expecting ''}'' > > _erbout.concat " "; link_block_to_remote { :url => > > { :action => :start_login } }, > > ^ > > syntax error, unexpected '','', expecting kEND > > _erbout.concat " "; link_block_to_remote { :url => > > { :action => :start_login } }, > > > ^ > > syntax error, unexpected kDO, expecting kEND > > :id => "home-login-container"} do ; > > _erbout.concat "\n" > > > # if i remove the html_options from the call, and remove the braces, > > it is ok > > > <% link_block_to_remote :url => { :action => :start_login } do--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---