1
我正在用AdonisJS构建一个项目,我想将它构建为模块化的两部分应用程序:AdonisJS服务器运行一个控制面板,并在该服务器之外运行一个自定义脚本IRC bot。我一直在试图将Lucid加载到第二个脚本中,以便我可以与我的数据库进行交互,但它只返回空对象{}
。有些事情要注意:在AdonisJS控制器之外使用Lucid
- 我已经确定我的数据库已填充。
- 我测试了我的控制器中的代码,它可以正常工作并获取结果。
- 辅助脚本启动Adonis的所有相同部分作为server.js,sans实际的HTTP服务器。
- 我已经尝试将此脚本附加到HTTP服务器,但它没有区别。
- 我也尝试创建具有相同结果的原始QueryBuilder对象。
这里的代码量最少我可以放在一起作为一个例子:
#!/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模型吗?
这个帮助。谢谢 – Ali