Try changing your route's positions and wrap the templateUrl in the params object:
$routeProvider
.when '/playlists/new',
{templateUrl: '/partials/playlists/new.html'}
.when '/playlists/:playlistId',
{templateUrl: '/partials/playlists/show.html'}
I'm not sure the solution is final but I think it will work since angular parses the routes sequentially
and, by the way, I think it's better to have two separate controllers for those two actions (new
and playlistId
).