josh
January 11, 2006, 11:12pm
1
Hi all
I have the following class:
class MemberController < ApplicationController
before_filter :authorize, :except => :index
def index
…
end
Now I want to give the before_filter more than one :except argument. I
tried :except => {:index, :login}, but this didn’t work.
How can i accomplish this?
Thanks a lot and have a nice day,
Josh
josh
January 11, 2006, 11:17pm
2
try array.
before_filter :authorize, :except =>[:index, :except]
josh
January 11, 2006, 11:18pm
3
Maiha wrote:
try array.
before_filter :authorize, :except =>[:index, :except]
Thank you. Is %w{ index, login } OK, too?
josh
January 11, 2006, 11:19pm
4
Try putting it in an array rather than a hash, e.g.
before_filter :authorize, :except => [:index, :login]
See under ‘Filter Conditions’:
http://api.rubyonrails.com/classes/ActionController/Filters/ClassMethods.html#M000127
csn
— Joshua M. [email protected] wrote:
–
Posted via http://www.ruby-forum.com/ .
Rails mailing list
[email protected]
http://lists.rubyonrails.org/mailman/listinfo/rails
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
[object
josh
January 11, 2006, 11:45pm
5
Thanks a lot.
But what exactly creates the array now and what the hash?
%w{} should create an array, right?
josh
January 11, 2006, 11:53pm
6
Joshua M. <forum@…> writes:
before_filter :authorize, :except => :index
before_filter :authorize, :except => [:index, :login]
-damon
josh
January 15, 2006, 9:56pm
7
And note that:
%w{index login}
creates this array:
[‘index’, ‘login’]
and this:
[:index, :login]
creates an array of symbols rather than an array of strings.
That should not be a problem, however, because send() accepts strings
too.
josh
January 15, 2006, 9:50pm
8
On Jan 11, 2006, at 4:45 PM, Joshua M. wrote:
Thanks a lot.
But what exactly creates the array now and what the hash?
The bare curlies create a hash, braces create an array.
%w{} should create an array, right?
%w{index login} will also create an array, but be careful not to
do %w{index, login} with the comma because then the comma becomes
part of the first array element.
e.g.
irb(main):001:0> a1 = [‘index’,‘login’]
=> [“index”, “login”]
irb(main):002:0> a2 = %w{index login}
=> [“index”, “login”]
irb(main):003:0> a3 = %w{index, login}
=> [“index,”, “login”]
-dudley