Ruby on Rails Monday, November 28, 2011

Hi All,

can somebody help me on this.

--Siva

On 11/28/2011 6:41 AM, newrails user wrote:
> Hi all,
> I am facing problem in getting subdomain name inside the model. The
> following is my setup.
> I am using cancan for authorization.I wanted a specific condition in
> Ability.rb ( the file which is placed in models if we install cancan gem).
> Below is the condition I wanted:
> =========================================================
> user ||= User.new # guest user (not logged in)
> if (user.role == 'admin' && user.site_name ==
> current_subdomain_name)
> can :manage, :all
> else
> can :read, :all
> end
> =======================================================
> current_subdomain_name should be the name of the subdomain on which
> user is browsing. But i could not get it.
> I have tried the following was but could not succeed.
> 1) setting a current_subdomain_name as a global variable in the
> application controller and using the global variable. (using ruby
> debugger i found that the global variable is having nil in it)
> 2) i have a method current_subdomain_name in the application helper
> which returns what i wanted, I included the same inside the ability
> model and tried to use the method . But was getting error .
> 3) writting a mehod in controller such that it returns what i wanted
> and use the same in the model.Still could not succeed.
> Can anybody let me know how to get the subdomain from request and use
> it in the model (In Ability.rb which cancan provide).
> Any help is highly appreciated.
> Thanks,
> Nror

--
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@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

No comments:

Post a Comment