On May 9, 2005, at 11:44 PM, Titus Brown wrote: > -> I guess Quixote could provide a utility function if the link_to > idea > -> catches on. > > It might be worth mentioning it somewhere in the docs. Certainly I've > found that the 'object/delete' functionality is, umm, too obvious > not to > use ;). No rule that says you can't use 'object/delete', just make sure you use POST and not GET when you do. Here is some code that might help (code not tested): class MethodNotAllowedError(PublishError): status_code = 405 title = "Method not allowed" description = ("The method specified in the Request-Line is not allowed " "for the resource identified by the Request- URI.") def __init__(self, allowed_methods): PublishError.__init__(self) get_response().set_header('Allow', ', '.join (allowed_methods)) class Whatever(Directory): _q_exports = ['delete'] def delete(self): if get_request().get_method() != 'POST': raise MethodNotAllowedError(['POST']) # do delete Ideally, proper verb use, content negotiation, and other fundamental aspects of HTTP would be handled by the object publishing framework. Unfortunately, I'm at a loss for exactly how that might be implemented cleanly, and not for lack of thinking about it... Ryan Tomayko rtomayko@gmail.com http://naeblis.cx/rtomayko/