Backbone.js Padrões e análise do modelo

Eu tenho issoBackbone.Model representando um volume da Google Books API:

    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;
    }
});

Qual é alimentado para este modelo:

<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>

Ao analisar o modelo, quando um volume JSON não contém umimageLinks Eu recebo este erro:

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

Eu sei que eu poderia consertá-lo, verificando com umif noModel ou notemplate mas qual é o propósito dedefaults propriedade do modelo então? Isso funciona apenas se não forparse?

questionAnswers(1)

yourAnswerToTheQuestion