我正在使用AdonisJS构建项目,我想将其构建为模块化的两部分应用程序:AdonisJS服务器运行控制面板,该服务器外部的自定义脚本运行IRC机器人。我一直在尝试将Lucid加载到第二个脚本中,以便我可以与我的数据库进行交互,但它只返回一个空对象{}
。有些事情需要注意:
这里我可以将最少量的代码放在一起作为例子:
#!/usr/bin/node
'use strict'
const fs = require('fs')
const bootstrap = require('./bootstrap/bot')
bootstrap(() =>
{
const AppConfig = use('AppConfig')
const Settings = use('App/Model/Settings')
const get_settings = function * () {
yield Settings.all()
}
console.log(get_settings())
})
console.log()
打印{}
,即使在控制器中调用的相同代码也会打印设置表中的所有条目。 bootstrap/bot.js
几乎是bootstrap/http.js
的完全复制品。唯一的区别是它没有启动HTTP服务器。
我已经搜索了源代码,寻找在启动服务器和运行控制器代码之间可能发生的事情,看看是否有一些关键的东西我错过了,但我迷失了
有没有人知道如何在AdonisJS控制器的范围之外使用我的Lucid模型?