首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据保存到Baqend中的数据库

将数据保存到Baqend中的数据库
EN

Stack Overflow用户
提问于 2017-09-27 19:46:26
回答 1查看 99关注 0票数 0

我似乎不知道如何更新数据库中的数据:

以下是代码:

代码语言:javascript
复制
  handleSubmit(event) {
    event.preventDefault();
    var fulladdress = this.state.address1 +" "+ this.state.city +", "+ this.state.state +" "+ this.state.zip;
    Geocoder.getFromLocation(fulladdress).then(
      json => {
        var location = json.results[0].geometry.location;
        //alert(location.lat + ", " + location.lng);
        var geo = new db.GeoPoint(location.lat, location.lng)
        var updatecompany = new db.Companies({
          id: '16747fce-f0b1-422b-aa60-220c2dccac58',
          name: this.state.name,
          logo: '',
          photo: '',
          address1: this.state.address1,
          address2: this.state.address2,
          city: this.state.city,
          state: this.state.state,
          zip: this.state.zip,
          geo: geo,
        });

        updatecompany.update().then(() => {
          alert("company saved!")
        })
      },
      error => {
        alert(error);
      }
    );
  }

在这个文件中,我希望更新公司简介的数据。首先,我们从Google获得lat/long。

当我运行它时,我会得到以下错误:未处理的拒绝(EntityExistsError):实体EntityExistsError由不同的db管理。

我尝试删除ID,但随后得到了这个错误:未处理的拒绝(PersistentError):无法插入新对象。

我需要用钥匙还是别的什么吗?或者id是在对象之外传递的还是什么的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-28 08:07:42

如果要修改现有对象,则应从db获取现有对象,然后修改它。这可以确保覆盖不会丢失任何更新。

代码语言:javascript
复制
db.Companies.load(id).then(company => {
     company.name = this.state.name;
     ...
     return company.update();
});

或者,您只需获得托管db对象,应用更改并强制保存它。这将覆盖任何现有的数据库状态,只保存您的更改。

代码语言:javascript
复制
//This will get the current managed object for the Id
//That object may not have loaded state
company = db.Companies.ref(id);
company.name = this.state.name;
//The force overwrites any previously stored state
//This may result in lost updates when the object is concurrently saved by different clients
company.save({force: true});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46456082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档