Backbone.js Modèle par défaut et analyser

J'ai ce Backbone.Model représentant d'un des Livres de Google API volume:

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

Qui est nourri de ce modèle:

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

Sur l'analyse du modèle, lorsqu'un volume JSON ne contient pas de imageLinks je reçois cette erreur:

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

Je sais que je pourrais le fixer en vérifiant avec un if dans le Model ou dans le template mais quel est le but de defaults modèle de propriété, alors? Cela fonctionne uniquement si pas primordial parse?

OriginalL'auteur Andrea Casaccia | 2013-07-21