2017-05-16 2 views
1

Je développe une application Ember pour une API existante. Cette API autorise tous les champs arbitraires de la charge utile JSON et les sauvegarde tous. Lors de la définition de modèles dans Ember, je ne peux pas anticiper tous les champs qui peuvent être utilisés. Malheureusement, toute mise à jour d'un modèle signifie que ces champs seront perdus. Je suis à la recherche d'une solution qui permette la persistance des champs récupérés par l'API mais non définis dans le modèle.Ember Data: Les champs Persist ne sont pas dans le modèle

Merci.

Répondre

1

Vous pouvez définir un modèle avec un attribut de données de braise sans type. Ensuite, vous stockez vos objets avec des clés arbitraires à cet attribut.

export default Model.extend({ 
    data: attr() 
}); 

De cette façon, vous pouvez régler quoi que ce soit à ce support, y compris des objets entiers, à savoir model.set('data', /* anything */) et il sera stocké dans les données de Ember.

+0

Fonctionne bien avec un sérialiseur personnalisé. –

+0

Heureux que ça a aidé. Les données de braises et surtout de braises requièrent parfois un piratage lorsque leurs opinions strictes ne correspondent pas à une api dans la nature. – nem035