2014-12-22 105 views
1

我剛接觸strongloop並查看文檔和示例,但從未根據需要看到我的問題。 心中已經兩款車型,sentence.js和log.js,使POST請求來自移動應用程序一個句子REST的API,例如在模型中創建模型

Model sentence.js (dont want save to db this model, only for parsing and creating log model) 
{ 
    name: 'sentence', 
    type: 'string' 
} 

Model log.js 
{ name: 'lat', type: 'string' }, 
{ name: 'lng', type: 'string' } 

[HTTP POST] myserver/api/sentence?d=$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A 

模型已經觸發方法,例如,afterInitialize,beforeValidate,beforeSave 。現在,哪些觸發方法或任何其他範圍正確和最好的解析句子模型和創建日誌模型?

謝謝!

回答

2

在你的情況下,最好的地方是

Sentence.beforeRemote('create', function(ctx, sentence, next){ 
    console.log(ctx.req.body); 
    next() 
}) 

而且Model hookSentence.afterInitializeModel EventSentence.on('set')可用,但會在一些額外的情況下被調用。

(請注意,在我的情況下,我會使用遠程掛鉤,只有一個日誌模式。)

+0

感謝,所以有關創建和保存log.js模型在此範圍內呢? – Blackkara

+1

是的,你可以做到這一點,通過 'Sentence.app.models.Log'或 'require('../../ server/server.js')。models.Log'或require('回送 ')。getModel(' 登錄')'。 在我的項目中,我使用'require('../ hooks/sentence.js')(server)'將掛鉤放在單獨的文件中,並將它們插入到server/boot/root.js中。所以在sentence.js中,我有一個模型的引用,例如:'server.models.Log'。 – IvanZh

+0

就像我想要的,謝謝! – Blackkara