2016-07-24 6 views
0

フェラコードはのマイナー変更があり、それは私にエラーを与えるエラーは、動的に

{"doc": doc} -> {"doc": doc,"collection":"test"} 
INSERT @doc INTO users... -> INSERT @doc INTO @collection... 

bind parameter 'bind parameter 'collection' has an invalid value or type near '@collection LET newDoc = NEW RET...' at position 1:18' has an invalid value or type (while parsing). Errors: {u'code': 400, u'errorNum': 1553, u'errorMessage': u"bind parameter 'bind parameter 'collection' has an invalid value or type near '@collection LET newDoc = NEW RET...' at position 1:18' has an invalid value or type (while parsing)", u'error': True} 

doesnの動的にコレクションを設定したり、間違いを作ったりしましたか?

答えて

2

コレクション名を挿入するAQLサポート。しかしそれは付加的な@をプレフィックスとして使用しなければならない珍しいケースです。この修正を https://docs.arangodb.com/3.0/AQL/Fundamentals/BindParameters.html

、あなたのコードは動作するはずです:

doc = {"_key": 'some_nice_key', "name": 'Robert', "age": '56'} 
bindVars = {"doc": doc,"@collection":"test"} 
aql = "INSERT @doc INTO @@collection LET newDoc = NEW RETURN newDoc" 
queryResult = db.AQLQuery(aql, bindVars = bindVars)