我对整个回调和承诺都很新,老实说我不知道它是如何在内部工作的,目前我正在使用帆并发现自己遇到了问题,我在我的数据库中有人和学生,
当有人试图创建一个学生时,必须首先创建一个人,但是这样做的方法是在另一个控制器中,我可以使用sails.controller.person.create()
在另一个控制器中调用该方法,但是,我该怎么做才能使它在继续之前等待来自创建的回复?或者不需要它,从人那里调用create的函数会等待返回?
注意:显而易见但是我正在计划在create方法上对数据库进行创建,这是异步的,这让我感到困惑的是它是否会等待查询回调内部的返回。
答案 0 :(得分:0)
我建议花一些时间来理解异步编程。参考:How do I return the response from an asynchronous call?
其次,不要从另一个控制器调用控制器方法。在多个地方使用的任何逻辑,将其移动到服务器并从控制器调用服务 理由是控制器方法将(请求,响应)作为参数并在进行多次创建时返回响应,应该在结束时返回响应。