I''ve created a plugin to generate error pages with a single function
call. The basic idea is that in your action you could call
error_forbidden and an error page would be rendered with the HTTP
status code 402. This works great so far when called from within an
action, but when I want to add the call to the "verfy" line, things
break:
verify :method => :post, :only =>
[ :create, :update, :destroy ], :render => { :text => error_invalid }
Generates the error message: "undefined method `error_invalid'' for
EventsController:Class"
How can I make the methods visible to the controller outside the
actions? For some reason I haven''t been able to make it work for
both. Here''s a snippet from the plugin:
# ErrorPage
module ErrorPagePlugin
#
# The user is forbidden to perform this action
#
def error_forbidden(options={})
options[:title] = options[:title] || "You do not have access to
perform that action."
options[:message] = options[:message] || "Make sure you''re
logged in
and have access to this feature."
options[:template] = "errors/forbidden.rhtml"
error_page(403, options)
end
#
# Invalid form method (get, put, delete, post)
#
def error_invalid(options={})
options[:title] = options[:title] || "Invalid Action"
options[:message] = options[:message] || "You have just tried to
perform an action that is invalid for that item."
options[:template] = "errors/invalid.rhtml"
error_page(501, options)
end
#
# Generate error page
#
def error_page(status=200, options={})
@status = status
@title = options[:title]
@message = options[:message]
@override_h1 = true
@page_id = "pg_error"
tmpl = options[:template] || "errors/generic.rhtml"
render :status => status, :template => tmpl
end
end
Thanks,
Jeremy
--~--~---------~--~----~------------~-------~--~----~
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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---