On Viernes, 17 de Septiembre de 2010 16:13:20 Michael Bahnmiller escribió:
> Hm.....   The trick here is that I won't have access to my authorization
> stuff (CanCan plugin).  It doesn't make sense in the model (nor can I do
> something like this):
>
> can? :delete, current_record
>
> ...
>

AS enables you to access current_record from model

> Thoughts?
>
> Thanks,
> M
>
> On 09/17/2010 08:10 AM, Sergio Cambra .:: entreCables S.L. ::. wrote:
> > Sorry, I was confused with model security methods. If you want to get the
> > current_record you must use model methods instead of controller methods.
> >
> > Add an initializer with:
> > ActiveRecord::Base.class_eval do
> >    def authorized_for_delete?
> >      self.....
> >    end
> > end
> >
> > On Viernes, 17 de Septiembre de 2010 15:57:23 Michael Bahnmiller escribió:
> >> I need to get a hold of the current record inside of the function that
> >> Volker defined (in the ApplicationController).  I'm not showing
> >> current_record, in that context, to exist
> >>
> >> class ApplicationController<   ActionController::Base
> >> ActiveScaffold::Actions::Delete.class_eval do
> >>      def delete_authorized?
> >>        #current_record here...
> >>      end
> >> end
> >> end
> >>
> >> On 09/17/2010 07:55 AM, Sergio Cambra .:: entreCables S.L. ::. wrote:
> >>> On Viernes, 17 de Septiembre de 2010 15:17:01 Michael Bahnmiller 
escribió:
> >>>> Next question on this....
> >>>>
> >>>> How can I get a hold of the current record that is being checked when
> >>>> this code is run?
> >>>
> >>> current_record is self, you are adding an instance method.
> >>>
> >>>> THANKS!
> >>>>
> >>>> Mikelb
> >>>>
> >>>> On 09/17/2010 12:23 AM, [email protected] wrote:
> >>>>> Hi,
> >>>>>
> >>>>> that s because mixed in module methods have a higher priority than
> >>>>> methods of a parent class.
> >>>>> That means your method in Application controller never gets called.
> >>>>>
> >>>>> One easy way to fix this would be to directly override method in
> >>>>> module delete:
> >>>>> ActiveScaffold::Actions::Delete.class_eval do
> >>>>>      def delete_authorized?
> >>>>>        false
> >>>>>      end
> >>>>> end
> >>>>>
> >>>>> --
> >>>>> Volker
> >>>>>
> >>>>> On Sep 17, 8:03 am, mikelb<[email protected]>    wrote:
> >>>>>> I am trying to use this:
> >>>>>>
> >>>>>> http://wiki.github.com/activescaffold/active_scaffold/security
> >>>>>>
> >>>>>> to restrict the delete action.  The conditions for this will be the
> >>>>>> same across *all* controllers.  So, I thought that it would be
> >>>>>> logical to place the "delete_authorized?" method in the
> >>>>>> ApplicationController.  But when I do that, nothing happens.  When I
> >>>>>> place it in the individual controller, I get what I should... it
> >>>>>> filters the delete action.
> >>>>>>
> >>>>>> The function that I am using is defined thus (to keep it simple, for
> >>>>>> testing purposes):
> >>>>>>
> >>>>>> def delete_authorized?
> >>>>>>        false
> >>>>>> end
> >>>>>>
> >>>>>> Any help would be great!
> >>>>>>
> >>>>>> Thanks,
> >>>>>> Mikelb

-- 
Sergio Cambra .:: entreCables S.L. ::.
Mariana Pineda 23, 50.018 Zaragoza
T) 902 021 404 F) 976 52 98 07 E) [email protected]

-- 
You received this message because you are subscribed to the Google Groups 
"ActiveScaffold : Ruby on Rails plugin" 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/activescaffold?hl=en.

Reply via email to