-
-
Notifications
You must be signed in to change notification settings - Fork 113
Open
Description
I was testing Ember Data Model Fragments against the latest Ember Data - version 3.28 - and unfortunately it looks like they're not compatible. Here's what happens when I try to save a model that contains a fragment:

index.js:178 Uncaught Error: Assertion Failed: You need to pass a model name to the store's serializerFor method
at assert (index.js:178)
at Store.serializerFor (ext.js:230)
at Store.superWrapper [as serializerFor] (index.js:442)
at Class.serializeFragment [as serialize] (fragment.js:40)
at ApplicationSerializer.serializeAttribute (json.js:1105)
at json.js:1035
at -private.js:1611
at Array.forEach (<anonymous>)
at Snapshot.eachAttribute (-private.js:1610)
at ApplicationSerializer.serialize (json.js:1034)
assert @ index.js:178
serializerFor @ ext.js:230
superWrapper @ index.js:442
serializeFragment @ fragment.js:40
serializeAttribute @ json.js:1105
(anonymous) @ json.js:1035
(anonymous) @ -private.js:1611
eachAttribute @ -private.js:1610
serialize @ json.js:1034
serialize @ rest.js:584
superWrapper @ index.js:442
serializeIntoHash @ rest.js:612
serializeIntoHash @ -private.js:634
createRecord @ rest.js:694
(anonymous) @ -private.js:1867
invokeCallback @ rsvp.js:493
(anonymous) @ rsvp.js:558
(anonymous) @ rsvp.js:19
invoke @ backburner.js:338
flush @ backburner.js:229
flush @ backburner.js:426
_end @ backburner.js:958
end @ backburner.js:708
_run @ backburner.js:1013
run @ backburner.js:752
run @ index.js:116
callback @ application.js:434
This particular problem seems to happen at
| let serializer = store.serializerFor(snapshot.modelName); |
The
serialize method is expecting a Snapshot, but actually receives the model instance of the fragment (I'm not sure why) - modelName is empty there.
Here's a minimal reproduction on a fresh Ember app:
ember-quickstart.zip
charlesfries, esbanarango, enspandi, AnDeVerin, whatthewhat and 2 more
Metadata
Metadata
Assignees
Labels
No labels