J. Shirley wrote:
On Thu, Mar 20, 2008 at 7:05 AM, Michele Beltrame <[EMAIL PROTECTED]> wrote:
Hi Aristotle!


 > But `uri_for` can take a lot more parameters than just one;
 > there's no reason you have to restrict your utility methods
 > to the first one.

 Also, it would be handy to be able to pass the status parameter (i.e.
 303 is widely used) to res->redirect() when using these utlity methods
 as well.

 Michele.

 --
 Michele Beltrame
 http://www.cattlegrid.info/
 ICQ 76660101 - MSN [EMAIL PROTECTED]



 _______________________________________________
 List: [email protected]
 Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
 Searchable archive: http://www.mail-archive.com/[email protected]/
 Dev site: http://dev.catalyst.perl.org/


It seems more reasonable to have a slightly more intelligent utility method.

Something that sets the status to 303 if the request type is a post
(and HTTP 1.1 as Aristotle posted earlier, although I'm not sure what
the "best" way to check is.  Assume it is unless stated otherwise, or
vice-versa?)

That makes sense for deciding whether or not to use 303, but deciding whether a redirection should be 301, 302 or 307 is not so deterministic.

Would it be evil to treat any initial /^3\d\d$/ argument as a status?

It would be cleaner, but less concise, to use a hash-like configuration:

# Temporary redirect to /my/action/1/2/3?q=search%20string
$c->uri_redirect({
   action => '/my/action',
   args => [qw( 1 2 3 )],
   status => 307,
   query => { q => "search string" },
   # detach => 1 ??
});

It should also be possible to support both syntaxes at once.

Matt


_______________________________________________
List: [email protected]
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/

Reply via email to