* Zbigniew Lukasiak <zzb...@gmail.com> [2009-10-21 14:15]: > What is the advantage of this over: > > sub view : Local { > my ( $self, $c, $id ) = @_; > $self->start( $c, $id ); > # do something with $c->stash->{obj} > return 1; > }
Consider `/forum/7/topic/13/post/4/editform`. The end point in that chain would be sub editform : Chained('post') { my ( $self, $c ) = @_; # ... } The equivalent URI with Local would be `/editpost/7/13/4` and the action would look like this: sub editform : Local { my ( $self, $c, $forum, $topic, $post ) = @_; $self->load_post( $forum, $topic, $post ); # ... } (And then of course `load_post` would have to look something like the following.) sub load_post { my ( $self, $forum, $topic, $post ) = @_; $self->load_topic( $forum, $topic ); # ... } Notice what’s going on with the argument lists between the two examples. Which code structure looks more DRY and which URI structure more consistent to you? -- *AUTOLOAD=*_;sub _{s/(.*)::(.*)/print$2,(",$\/"," ")[defined wantarray]/e;$1} &Just->another->Perl->hack; #Aristotle Pagaltzis // <http://plasmasturm.org/> _______________________________________________ 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/