The powerful thing about generic views -- as far as I'm concerned -- is that they're encapsulated generic logic. Things like "show an individual object" or "show objects published in December 2009" or whatever, which crop up over and over in real-world use, and which are best written once and reused over and over again.
I hope I showed that those sorts of things are quite possible using the same basic techniques that I showed for the redirection and rendering generic actions. Thanks for the feedback :)
Well, it may just be that I don't know enough about Rails, but how do you do that sort of thing? For example, what's the equivalent data structure to a QuerySet that you'd pass around as an argument?
One (pretty simple) solution would be to use a block to pull out the object in question:
match "/:id" => object_detail {|params| Poll.find(params[:id]) }
Rails 3, with its ActiveRelation integration, could also support a syntax similar to the QuerySet syntax:
match "/:id" => object_detail(Poll.all)
where Rails would internally take the Relation from Poll.all and do @relation.where(:id => params[:id]). To be honest, while the newly available syntax is nice, lightweight block syntax is pretty nice as well.