correction: http://website.com/is the user's profile which is publically viewable ...
________________________________ From: Charles <cshtr...@yahoo.com> To: The elegant MVC web framework <catalyst@lists.scsys.co.uk> Sent: Wednesday, April 29, 2009 5:46:23 PM Subject: Re: [Catalyst] website member urls John, John, technically, you're correct in that I should consider placing the usernames under /user. But I'm thinking of the fuzzy (to me) usability issues involved and the http://website.com/ meme is what hundreds of millions non-developer users have come to expect. Also, fwiw, http://website.com/is the user's profile which is publically viewable while http://website.com/member/ is the users url when they are logged in. Thanks so much for your input. Catalyst Rocks. -Charles Are you sure you want to layout your URLs that way, though? You'll *never* need other top level items that might conflict with user names? If you put all the users under /user (or something like that) then they're in their own namespace and you won't have problems with name conflicts. - john romkey http://www.romkey.com/ ________________________________ From: John Romkey <rom...@apocalypse.org> To: The elegant MVC web framework <catalyst@lists.scsys.co.uk> Sent: Wednesday, April 29, 2009 5:21:53 PM Subject: Re: [Catalyst] website member urls On Apr 29, 2009, at 4:52 PM, Charles wrote: On Wed, Apr 29, 2009 at 05:31:43PM -0300, Fernan Aguero wrote: > On Wed, Apr 29, 2009 at 5:23 PM, Charles <cshtr...@yahoo.com> wrote: > > I'd like someone w/ better catalyst-fu to recommend how I could implement > > urls for members a la myspace and youtube ( ie > > http://websiteurl.com/ ) . > > There's got to be a better way that creating a seperate controller for each > > user. > > sub member : Regex('\S+') { > my ($self, $c) = @_; Using Regex for that seems weird to me. sub member : Chained(/) Args(1) { my ($self, $c, $id) = @_; ... } hans, This seems to work, although, i'd have to add logic to have this member controller ignore the following types of urls http://websiteurl.com/signup http://websiteurl.com/members/ <= users see this as their url when logged in. Not at all. You just add handlers for those URLs to your controller; they're more specific than the member handler and should match. sub signup : Chained('/') PathPart('signup') Args(0) { ... } Are you sure you want to layout your URLs that way, though? You'll *never* need other top level items that might conflict with user names? If you put all the users under /user (or something like that) then they're in their own namespace and you won't have problems with name conflicts. - john romkey http://www.romkey.com/
_______________________________________________ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/