createRecord 正在创建一个空记录

createRecord is creating a record with null

我有很多 属性。 这是我的模型

status: DS.attr(), 
    OnInsert: DS.attr('boolean',{defaultValue: true}),
    rOnUpdate: DS.attr('boolean',{defaultValue: false}),
    filterQuery:DS.attr({defaultValue: {"condition": "AND", "subRules": [], "subGroups" : []}}),
    ruleCase:DS.hasMany('rule',{async:true}),

在我的 hbs 中,我创建了一些按钮: 这是我的 hbs 代码:

<button type="button" class="btn btn-warning btn-sm" {{action 'createrecord'}}>Case</button>

然后在控制器中我定义了这个动作: 这是我的控制器代码:

actions:{
    createrecord:function(){
        return this.store.createRecord('rulecase');
    }
}

但是每次当我点击添加按钮时,它都会创建一个 id =null 的空记录,因为我无法在上面迭代 model.ruleCase。 如何克服这个问题????

如果您想要的是能够将新规则案例关联到模型,则不需要 ID。
修改createRecord方法,推送到model.ruleCase

createrecord:function(){
    const newRulecase = this.store.createRecord('rulecase');
    model.get('ruleCase').pushObject(newRulecase)
    return newRulecase;
}

如果有其他原因导致您需要 ID,您可以使用 generateIdForRecord 在客户端生成一个。您需要为 ruleCase 模型生成适配器文件并应用 ID 的逻辑。