For starters, I wouldn't get so hung up on DRY. Are the pages you are creating very nearly identical but with different data sets?
Jonathan's suggestion sounds good: http://app/default/show/t <http://app/default/show/tablename>rips http://app/default/show/p <http://app/default/show/tablename>ersons