2016-03-28 17 views
3

bookshelf.jsに複数のレコードを保存するにはどうすればよいですか?bookshelf.jsに複数のレコードを保存する

はどのように我々は「invokeThen」で「起動」の交換、ループと私は本棚が更新されていると思います

[ 
    {name: 'Person1'}, 
    {name: 'Person2'} 
] 

答えて

3
var Promise = require('bluebird'); 
var Accounts = bookshelf.Collection.extend({ 
    model: Account 
}); 

var accounts = Accounts.forge([ 
    {name: 'Person1'}, 
    {name: 'Person2'} 
]) 

Promise.all(accounts.invoke('save')).then(function() { 
    // collection models should now be saved... 
}); 
+1

呼び出しがinvokeThenによって置き換えてきていると思います。 – Starchand

+8

これはすべてを一度に保存するわけではありません。これは、保存ごとに個別のデータベースクエリを実行します。 – Asher

+0

@Asher:すべてのレコードを1つのクエリでどのように保存しますか? – j10

5

を挿入せずに、次のデータを保存します。

var Accounts = bookshelf.Collection.extend({ 
 
    model: Account 
 
}); 
 
    
 
var accounts = Accounts.forge([ 
 
    {name: 'Person1'}, 
 
    {name: 'Person2'} 
 
]) \t 
 

 
accounts.invokeThen('save').then(function() { 
 
    // ... all models in the collection have been saved 
 
});

+0

私は句 – j10

+0

は、それが一度にそれらのすべてを保存しない場所を使用して本棚に倍数の行を更新することができますどのようにか一つずつ? – Salar

関連する問題