代码之家  ›  专栏  ›  技术社区  ›  Mark Ryan Orosa

环回查找然后更新属性或按id删除

  •  7
  • Mark Ryan Orosa  · 技术社区  · 8 年前

    一直在尝试为环回中的persistedModel找到一些静态方法的示例用法。

    https://apidocs.strongloop.com/loopback/#persistedmodel-prototype-updateattribute

    它只是说:

    persistedModel.updateAttributes(data, callback)
    

    但是你怎么选择我要更新的记录呢?这对我不起作用。

    var order = Order.setId('whateverrecordId');
    order.updateAttributes({name:'new name'},callback)
    

    爱环回。。但是他们的医生,太差劲了(

    2 回复  |  直到 8 年前
        1
  •  3
  •   user8841657 user8841657    8 年前

    例子:

    Model.observe('after save', function(ctx, next) {
       ctx.instance.updateAttribute(fieldname:'new value');
       next();
    });
    
        2
  •  3
  •   Anouar Kacem    8 年前

    1-你所做的是对的,但我不建议这种方法,它用于实例方法,通常用于更新所有集合的日期等字段,因此不需要id。

    order.find().then(function(orders) {
    
              orders.forEach(function(element) {
    
                order.setId(element.id); 
                #DoSomething
                order.updateAttribute({new: data}, function(err, instance) {
    
                  console.log(instance);
                })
              });
            })
    

    持久模型。updateAll([其中],数据,回调)

    var Updates = [{id : 1, name: name1}, ...]
    Updates.forEach(function(element) {
    order.updateAll({id : element.id}, {name :element.name}, function(err, count) {
          if (err) {
            console.error(err);
          }
          console.log(count); // number of data updated
        })
     })