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.