場合によっては、ルーティング URL に問題が発生しました。これが私のルーターです:
contacts: Em.Route.extend({
    route: '/contacts',
    index: Em.Route.extend({
        route: '/',
        connectOutlets: function(router, context) {
            App.contactsController.populate()
            var appController = router.get('applicationController');
            appController.connectOutlet('contactsList');
        }
    }),
    show: Em.Route.extend({
        route: '/:contactid',
        connectOutlets: function(router, context) {
            alert('show contact');
        }
    }),
    doShowContact: function(router, event){
        router.transitionTo('show', {contactid: event.context.id});
    }
}),
doShowContact 内に入るとき、コンテキストとして「contactid」を指定し、「show」内のルートとして「/:contactid」を指定すると、ブラウザーの URL でたとえば「/contacts/3」が取得され、すべて問題ありません。
ただし、doShowContact では、 「contactid」ではなく「contact_id」をコンテキストとして指定し、 「/:contactid」ではなく「/:contact_id」をルートとして指定した場合。ブラウザの URL に「/contacts/undefined」が表示されます。
それを説明する方法はありますか?ありがとう!