目前,我正在使用Ember Data加载一些可能存在或不存在的数据。如果记录不存在,Web应用程序应该创建它。
简单的用例:记录库存。如果文章不存在,则应添加新文章。如果确实存在,那么员工可以立即使用该信息。
我怀疑适配器find()方法是这个问题的根源。它无法处理404未找到的错误,并且传递空结果也不起作用。
可能我忽略了一些微不足道的事情,因为他们发现或创造了一些东西。是一个非常规律的模式。请帮忙......
答案 0 :(得分:4)
请参阅this issue,或者这是解决方案:
findOrCreate: (type, properties)->
@store.find(type, properties.id).then null, (reason)=>
if reason.status == 404
record = @store.recordForId(type, properties.id)
record.loadedData()
record.setProperties(properties)
record.save()
else
throw reason
答案 1 :(得分:1)
见#296 已经是这个
的错误报告