由於用戶函數不允許對數據產生副作用,我想知道是否可以從另一個函數調用一個函數。Arangodb:我可以從用戶功能調用用戶功能嗎?
我想分解出常見的計算。
一種可能的方式我看到的是用
var result = db._query("RETURN myfuncs::func(@a1, @a2)",
{'@a1': 'val1', '@a2': 'val2}, null, null).next();
但我想另一種方式,如果可能的。
由於用戶函數不允許對數據產生副作用,我想知道是否可以從另一個函數調用一個函數。Arangodb:我可以從用戶功能調用用戶功能嗎?
我想分解出常見的計算。
一種可能的方式我看到的是用
var result = db._query("RETURN myfuncs::func(@a1, @a2)",
{'@a1': 'val1', '@a2': 'val2}, null, null).next();
但我想另一種方式,如果可能的。
每個用戶功能都是完全獨立的,這意味着無法從另一個用戶功能中調用用戶功能。
這可能會在未來發生變化,但這是目前的情況(ArangoDB 2.3/2.4/2.5)。
我發現如何做到這一點。你可以在用戶函數中使用db._query,即
var db = require('internal').db;
var resultFromOtherUserFunc = db._query('RETURN userFunction::MyFunction(@param)', {param: true}).toArray();
解決方案/解決方法實際上是在我的問題中提到的;-) – 2016-11-30 21:40:04
這對我們的用例來說是不幸的。我會用數據庫aproach – 2015-02-09 12:35:22
來做,只是爲了記錄:在原型設計過程中,db-way有很多幫助,現在一切都移植到foxx。 – 2016-09-28 14:24:07