--
You received this message because you are subscribed to the Google Groups "merb" group.
To post to this group, send email to me...@googlegroups.com.
To unsubscribe from this group, send email to merb+uns...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/merb?hl=en.
To unsubscribe from this group, send email to merb+uns...@googlegroups.com.
Is there something wrong with my syntax?
Here's the controller code:
(I'm hoping to replace the commented 'request.ajax' conditions with
one 'before' filter but the before filter causes the 'undefined' error
on any action call)
class Notes < Application
before Proc.new{ self.layout = false if request.ajax? }
def index
@notes = Note.all
display @notes #, request.ajax? ? { :layout=>false } : nil
end
def edit(id)
only_provides :html
@note = Note.get(id)
raise NotFound unless @note
display @note #, request.ajax? ? { :layout=>false } : nil
end
...etc...
end
George
On Dec 16, 5:33 pm, Yehuda Katz <wyc...@gmail.com> wrote:
> Oh noes. Trapped by the Ruby local variable ambiguity. You'll need
> self.layout=, as layout = defines a local in the proc's scope.
>
> Yehuda Katz
> Developer | Engine Yard
> (ph) 718.877.1325
>
> On Wed, Dec 16, 2009 at 12:08 PM, George Adamson <
>
> > merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> > >.
> > > >> For more options, visit this group at
> > > >>http://groups.google.com/group/merb?hl=en.
>
> > > > --
> > > > You received this message because you are subscribed to the Google
> > Groups
> > > > "merb" group.
> > > > To post to this group, send email to me...@googlegroups.com.
> > > > To unsubscribe from this group, send email to
> > > > merb+uns...@googlegroups.com<merb%2Bunsu...@googlegroups.com><
> > merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
To unsubscribe from this group, send email to merb+uns...@googlegroups.com.
The solution is to use:
before Proc.new{ self.class.layout(false) if request.ajax? }
Much tidier than lots of conditions littering the controller actions.
George
On Dec 17, 10:32 am, jonah honeyman <gewglestolemyp...@gmail.com>
wrote:
> >> > > merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> >> <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
>
> >> > > >.
> >> > > > >> For more options, visit this group at
> >> > > > >>http://groups.google.com/group/merb?hl=en.
>
> >> > > > > --
> >> > > > > You received this message because you are subscribed to the Google
> >> > > Groups
> >> > > > > "merb" group.
> >> > > > > To post to this group, send email to me...@googlegroups.com.
> >> > > > > To unsubscribe from this group, send email to
> >> > > > > merb+uns...@googlegroups.com<merb%2Bunsu...@googlegroups.com>
> >> <merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> >> ><
> >> > > merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> >> <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
>
> >> > > >.
> >> > > > > For more options, visit this group at
> >> > > > >http://groups.google.com/group/merb?hl=en.
>
> >> > > --
>
> >> > > You received this message because you are subscribed to the Google
> >> Groups
> >> > > "merb" group.
> >> > > To post to this group, send email to me...@googlegroups.com.
> >> > > To unsubscribe from this group, send email to
> >> > > merb+uns...@googlegroups.com<merb%2Bunsu...@googlegroups.com><
> >> merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> >> >.
> >> > > For more options, visit this group at
> >> > >http://groups.google.com/group/merb?hl=en.
>
> >> --
>
> >> You received this message because you are subscribed to the Google Groups
> >> "merb" group.
> >> To post to this group, send email to me...@googlegroups.com.
> >> To unsubscribe from this group, send email to
> >> merb+uns...@googlegroups.com <merb%2Bunsu...@googlegroups.com>.
> >> For more options, visit this group at
> >>http://groups.google.com/group/merb?hl=en.
>
> > --
> > -jonah
>
> --
> -jonah
The intention is to disable layout for any action when
request.ajax==true.
Anyone else got a suggestion please?!
I found this related post but it suffers from the same 'undefined
method' error described earlier:
http://groups.google.com/group/merb/browse_thread/thread/4b1d52a5e0061da5/09121030ffd93c65?lnk=gst&q=layout&pli=1
George
On Dec 17, 11:57 am, George Adamson <George.Adam...@SoftwareUnity.com>
wrote:
To unsubscribe from this group, send email to merb+uns...@googlegroups.com.
On Dec 17, 1:22 pm, jonah honeyman <gewglestolemyp...@gmail.com>
wrote:
> Use a touch of logic in the before hook:
>
> before Proc.new{ self.class.layout(request.ajax? ? false : :application) }
>
> On Thu, Dec 17, 2009 at 2:15 PM, George Adamson <
>
>
>
> George.Adam...@softwareunity.com> wrote:
> > Oh no! I take it back...
> > This solution disabled layout for *all* requests to the controller,
> > even those where request.ajax==false:
> > before Proc.new{ self.class.layout(false) if request.ajax? }
> > (Presumably it is not working because it is setting an attribute on
> > the class and not the instance?)
>
> > The intention is to disable layout for any action when
> > request.ajax==true.
>
> > Anyone else got a suggestion please?!
>
> > I found this related post but it suffers from the same 'undefined
> > method' error described earlier:
>
> >http://groups.google.com/group/merb/browse_thread/thread/4b1d52a5e006...
> > > > >> > > merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> > <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
>
> > > > >> <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
> > <merb%25252Bun...@googlegroups.com<merb%2525252Bu...@googlegroups.com>
>
> > > > >> > > >.
> > > > >> > > > >> For more options, visit this group at
> > > > >> > > > >>http://groups.google.com/group/merb?hl=en.
>
> > > > >> > > > > --
> > > > >> > > > > You received this message because you are subscribed to the
> > Google
> > > > >> > > Groups
> > > > >> > > > > "merb" group.
> > > > >> > > > > To post to this group, send email to me...@googlegroups.com.
> > > > >> > > > > To unsubscribe from this group, send email to
> > > > >> > > > > merb+uns...@googlegroups.com<merb%2Bunsu...@googlegroups.com>
> > <merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
>
> > > > >> <merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> > <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
>
> > > > >> ><
> > > > >> > > merb%2Bunsu...@googlegroups.com<merb%252Buns...@googlegroups.com>
> > <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
>
> > > > >> <merb%252Buns...@googlegroups.com<merb%25252Bun...@googlegroups.com>
> > <merb%25252Bun...@googlegroups.com<merb%2525252Bu...@googlegroups.com>