2016-01-19 56 views
0

是否有可能將函數存儲在Meteor的MongoDB集合中?在Meteor中的MongoDB中存儲函數

我試圖定義與

const SchemaName = new SimpleSchema({ 
    text: { 
    type: String, 
    }, 
    transform: { 
    type: Function, 
    } 
}); 

CollectionName.attachSchema(SchemaName); 

我的架構,並與

CollectionName.insert({ text: "Some text", transform: function (value) { return value * 2; } }); 

添加一個文件,但它似乎並沒有工作。

我該怎麼辦?

回答

1

我保存的功能類型爲「字符串」,然後在加載期間,我通過使用evalnew Function()將其轉換爲函數。 Function不是SimpleScheme

+0

現在你必須非常小心該函數的來源,否則這將成爲一個理想的攻擊矢量。 –

+0

是的,保存的功能是用於我們爲內部使用而創建的表單生成器,因此它處於控制下 –

+0

因此,將函數保存到集合根本無法進行?我怎樣才能獲得我想要的?我的代碼中是否應該有一些預定義的函數,然後將函數名保存在集合中而不是保存整個函數? – Jamgreen