Quantcast
Channel: Ember.JS - Latest topics
Viewing all articles
Browse latest Browse all 4837

createRecord for relationship of unsaved record

$
0
0

@kaeid wrote:

I have the following scenario:

1- Parent route that creates a record for multi-page form

routes/feedback.js
model() {
  return this.get('store').createRecord('feedback');
},

2- child route that return two models, question is non-related model that return multiple questions showing in dynamic route. And answer which creates a record that answer these questions in its page

routes/feedback/question.js
model(params) {
    return Ember.RSVP.hash({
      question: this.get('store').findRecord('question', params.question_id),
      answer: this.get('store').createRecord('answer')
    })

  },

3- Answer has a belongsTo relationship feedback

models/answer.js
choice: DS.attr(),   // receives data from question through a controller
feedback: DS.belongsTo()

models/feedback.js
submittedAt: DS.attr(),
answers: DS.hasMany()

4- data passed from a question to an answer record through controller

controllers/feedback/question.js
getChoice(choice) {
  let answer = this.get('model.answer');
  let questionId = this.get('model.question').get('id');

  answer.setProperties({
    choice: choice,
    questionId: questionId,
    // feedback: should relationship go here?
  })
  answer.save()

controllers/feedback.js
newModel: null,
actions: {
  save(newModel) {
    newModel.save()
  }
}

So how the relationship should be assigned if feeback doesn’t have an ID yet?

Also can I hold the answer saving till the newModel for feedback is saved? Actually, I tried to bubble getChoice action to parent controller but the same problem of null record.

Posts: 1

Participants: 1

Read full topic


Viewing all articles
Browse latest Browse all 4837

Trending Articles