Backbone.js Modelo predeterminado y análisis

tengo estoBackbone.Model que representa un volumen de API de Google Books:

    var Book = Backbone.Model.extend({

    defaults: {
        volumeInfo : {
            title: 'n.a.',
            authors: 'n.a.',
            publisher: 'n.a.',
            publishedDate: 'n.a.',
            imageLinks : {
                smallThumbnail: '/unavailable.jpg'
            }
        }
    },

    parse: function(resp) {
        if (resp.volumeInfo.authors) {
            resp.volumeInfo.authors = resp.volumeInfo.authors.join(',');
        }
        return resp;
    }
});

Que se alimenta a esta plantilla:

<script type="text/template" id="bookCollectionRow">
    <tr>
        <td><img class="thumbnail" src="<%= volumeInfo.imageLinks.smallThumbnail %>" /></td>
        <td><a target="_blank" href="<%= volumeInfo.canonicalVolumeLink %>"><%= volumeInfo.title %></a></td>
        <td><%= volumeInfo.authors %></td>
        <td><%= volumeInfo.publisher %></td>
        <td><%= volumeInfo.publishedDate %></td>
    </tr>
</script>

Al analizar la plantilla, cuando un volumen JSON no contiene unimageLinks Recibo este error:

Uncaught TypeError: Cannot read property 'smallThumbnail' of undefined.

Sé que podría arreglarlo comprobando con unif en elModel o en eltemplate pero ¿cuál es el propósito dedefaults propiedad modelo entonces? ¿Eso funciona solo si no se anula?parse?

Respuestas a la pregunta(1)

Su respuesta a la pregunta