I'm having difficult saving a one-to-many relationship in ember data. I have a relationship like this:
App.ParameterSet = DS.Model
name: DS.attr("string")
regions: DS.hasMany("App.Region")
App.Region = DS.Model
name: DS.attr("string")
If I were to do something like this:
parameterSet = App.ParameterSet.find(5)
@transaction = @get("store").transaction()
@transaction.add(parameterSet)
region1 = App.Region.find(10)
region2 = App.Region.find(11)
parameterSet.set("name", "foo")
parameterSet.get("regions").pushObject(region)
@transaction.commit()
Then I would like to see a PUT request with payload like this:
api/ParameterSets/5
{parameterSet: {name: "foo", regionIds:[10, 11]}}
but instead I get this:
{parameterSet: {name: "foo"}}
I don't care about the relationship back from child to parent but if I add parameterSet: DS.belongsTo("App.ParameterSet")
to the App.Region model then I get 2 PUT requests to the regions url for the two new relationships which is not really what I want.
I guess this is a many-to-many relationship really which I'm not sure is yet supported but any ideas on how to achieve what I've described? Thanks
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…