从现有ArangoDB数据库自动生成模型定义

dpiehjr4  于 2022-12-09  发布在  Go
关注(0)|答案(1)|浏览(117)

我正在使用ArangoDB 3.4,并计划使用一个MVC框架,如Backbone.js(或任何推荐的框架)。是否有一种方法可以从现有的数据库自动生成模型,以减少我必须手工编写的样板代码的数量?
例如,我正在查看aye-aye TodoMVC demo。它具有以下型号:

const joi = require('joi');

exports.Model = {
  _key: joi.string().optional(),
  _id: joi.string().optional(),
  _rev: joi.string().optional(),
  completed: joi.boolean().optional(),
  order: joi.number().optional(),
  title: joi.string().optional()
};

手工编写一些模型是没有问题的。我的数据库最终将需要许多这样的模型。是否有任何工具可以与ArangoDB一起使用,通过生成脚手架代码来帮助自动化这一过程?
我所想到的可能类似于Python的inspectdb命令:

  • http://docs.djangoproject.com/en/dev/ref/django-admin/#inspectdb

检查数据库
内省DATABASE_NAME设置指向的数据库中的数据库表,并将Django模型模块(models.py文件)输出到标准输出。
如果你有一个遗留数据库,并且想使用Django,可以使用这个脚本。脚本将检查数据库,并为其中的每个表创建一个模型。
正如您所期望的,所创建的模型将为表中的每个字段提供一个属性。
如果有完全不同的方法来使用ArangoDB和javascript做这件事,请给我指出正确的方向。

l5tcr1uw

l5tcr1uw1#

django-admin inspectdb [table [table ...]]以关系数据库为目标,其中的表具有模式,因此可以生成模型
ArangoDB是一种具有无模式集合的NoSQL,能够存储各种JSON文档类型,因此您需要获取每个文档类型的模式。
当使用fullstackjavascript方法时,你可以把你的模型放在js模块中,并在前端和后端使用它。
对我们来说,最可靠和可扩展方法是基于Typescript作为主控器,并具有以下工作流

然后您可以

相关问题