- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 ArangoDB 中设置一个消息集合,在输入消息时添加时间戳。但是,当我在 foxx 中设置模型时,如果我在模型架构中设置 joi.date()
或 joi.date().timestamp()
将不起作用.
我尝试使用 joi documentation 中的示例并将其转换以供测试示例使用。
'use strict';
var Foxx = require('org/arangodb/foxx');
var joi = require('joi');
var now = new Date();
var javascriptTimestamp = now.getTime();
var unixTimestamp = now.getTime() / 1000;
class TestMessage extends Foxx.Model {
}
TestMessage.prototype.schema = joi.object().options({abortEarly: false}).keys({
unix: joi.date().timestamp('unix'),
message: joi.string()
});
TestMessage.prototype.beforeUpdate = function() {
this.set({unix: now.getTime()});
};
module.exports = TestMessage;
当我保存它并去测试它时,模型不会显示或响应开发页面上的任何内容。
我怎样才能让它正确设置日期和/或时间戳?
我唯一能做的就是直接使用 AQL,但我仍然不明白如何将它集成到 Controller 中,我希望有一个简单的解决方案。
最佳答案
joi 中日期类型的问题是 JSON 不支持日期对象,因此数据库中数据的表示和请求中的数据将不匹配(您期望毫秒时间戳,但在内部将存储日期作为 JSON 日期字符串)。
如果您需要能够将日期值转换为服务中的日期对象,请尝试使用 joi.date().iso()
。 iso 变体将解析 JSON.stringify
使用的格式,因此数据将在往返过程中幸存下来:
let isoDate = JSON.parse(JSON.stringify(new Date());
let result = joi.date().iso().validate(isoDate);
let joiDate = JSON.parse(JSON.stringify(result.value));
assert.equal(isoDate, joiDate);
您还应该使用基于函数的模型扩展而不是基于类的语法。由于引擎限制,基于类的语法被恢复,尽管文档显然还没有完全调整:
const Foxx = require('org/arangodb/foxx');
const TestMessage = Foxx.Model.extends({
schema: {/* ... */}
});
关于javascript - ArangoDB Foxx 模型日期时间戳不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36018575/
今天有小伙伴给我留言问到,try{...}catch(){...}是什么意思?它用来干什么? 简单的说 他们是用来捕获异常的 下面我们通过一个例子来详细讲解下
我正在努力提高网站的可访问性,但我不知道如何在页脚中标记社交媒体链接列表。这些链接指向我在 facecook、twitter 等上的帐户。我不想用 role="navigation" 标记这些链接,因
说现在是 6 点,我有一个 Timer 并在 10 点安排了一个 TimerTask。之后,System DateTime 被其他服务(例如 ntp)调整为 9 点钟。我仍然希望我的 TimerTas
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我就废话不多说了,大家还是直接看代码吧~ ? 1
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑。 核心功能 Mav
我是一名优秀的程序员,十分优秀!