local_dispatch. It used to take the path as a string parameter - now it takes an array - i.e. the path split on the '/' character. The past way was more universal as it let the user programmer to specify how to parse the path - but I think splitting on '/' is such a common usage that it justifies the change. And it is not destructive - so if someone really want's to parse the path in a different way then he can join it back.This change will be in the next WebNano release.
In the longer perspective I am thinking about being more compliant with the Law of Demeter and building the controllers with the needed model parts in their own attributes, instead of accessing them through
app. So for example some code in Nblog would change from $self->app->schema->resultset( 'Article' )->search to
$self->article_rs->searchNow this can be done by overriding the
handle class method - but maybe it needs something more elegant.
3 comments:
tiny, minor point, but what about
$self->rs('Article')->search
rather than
$self->article_rs->search
"rs" then becomes a "smart" alias for schema->resultset, but retains the method(Table) semantics.
Sure - this is also good. In fact I can see also cases where
$self->search_articles
would also make sense. I think this is where TIMTOWTDI does make sense - because I don't know how this will be used. The point is to make it easy to use whatever style the programmer wants.
Take a look at DBIx::Class::Schema::ResultSetAccessors
Post a Comment