Sails JS如何在自动路由POST

时间:2016-09-14 01:25:44

标签: javascript node.js sails.js

我有一个运行Sails的应用程序,我正在使用很多POST,GET,PUT,DELETE的蓝图,它们运行得很好。

现在,我希望在触发默认蓝图后触发操作。例如,如果我请求example.com/user并使用POST发送,我希望蓝图路由在数据库中插入信息然后执行其他操作,我该怎么做?使用蓝图(很棒)然后触发其他一些动作,然后返回。

我知道我可以使用自己的路线,但是我想自动使用Sails的功能,所以不要为该帖子添加路由并自行完成所有操作,我想插入Sails然后再做其他事情

谢谢!

1 个答案:

答案 0 :(得分:1)

  

现在,我想在默认蓝图之后触发一个动作   触发。例如,如果我请求example.com/user并发送它   使用POST,我希望蓝图路由在DB中插入信息   然后做一些其他的动作,我该怎么做?

Lifecycle callbacks旨在解决此类问题。它们是在某些模型操作之前或之后自动调用的函数。例如。 Dim ExcelWorkbook1 As Workbook 'put this here Public Sub OpenExcel(ByVal Path As String, ByVal Filename As String) Dim xlApp As Excel.Application = New Microsoft.Office.Interop.Excel.Application() xlApp.Visible = True If xlApp Is Nothing Then MessageBox.Show("Excel is not properly installed!!") End If Dim MyFile As String = Dir$(Path + "\" + Filename) If MyFile = Filename Then ExcelWorkbook1 = xlApp.Workbooks.Open(Path + "\" + Filename) 'The declaration here is moved outside of the sub, granting access to the other subs Else MessageBox.Show("Excel not found!") End If End Sub

using afterUpdate

当您需要更多灵活性时,您必须创建类似的模型操作

module.exports = {
  attributes: {
    username: {
      type: 'string',
      required: true
    },
    password: {
      type: 'string',
      minLength: 6,
      required: true,
      columnName: 'hashed_password'
    }
  },
  // Lifecycle Callbacks
  afterUpdate: function (values, cb) {
      // notify user about updated profile
  }
};

你可以通过简单地重定向到它来调用另一个动作。