对于现有的 MySQL 数据库,我使用 Sequelize-auto 包来生成模型。但这些关联并不附带模型类。
我有一个 MySQL 数据库,并将其用于 NodeJS Web 项目。我还使用 Sequelize 作为 ORM。由于数据库已经存在,我想生成模型类作为实体。所以我使用了sequelize-auto
https://github.com/sequelize/sequelize-auto生成模型类。但是,当它们生成时,属性已正确设置,但关联并未与模型类一起出现。所以我在从数据库获取数据时遇到了问题。
以下是使用 sequulize-auto 生成的两个模型类。数据库中有两个表,分别为“部门”和“类别”。Department.js 和category.js 是生成的两个模型类
部门.js
module.exports = function(sequelize, DataTypes) {
return sequelize.define('department', {
department_id: {
type: DataTypes.INTEGER(11),
allowNull: false,
primaryKey: true,
autoIncrement: true
},
name: {
type: DataTypes.STRING(100),
allowNull: false
},
description: {
type: DataTypes.STRING(1000),
allowNull: true
}
}, {
tableName: 'department',
timestamps: false,
});
};
Run Code Online (Sandbox Code Playgroud)
类别.js
module.exports = function(sequelize, DataTypes) {
return sequelize.define('category', {
category_id: {
type: DataTypes.INTEGER(11),
allowNull: false,
primaryKey: true, …Run Code Online (Sandbox Code Playgroud) 我有一个 Bitbucket 管道,它使用 cloudformation 创建 AWS 资源并将网站部署到其中。但即使 cloudform 正确创建堆栈,部署也会失败。我认为问题是当部署发生时,cloudformation S3 存储桶创建可能尚未完成。
我有一个 Hugo 网站,并且创建了一个 bitbucket 管道以将其部署到服务器。它的作用是使用 cloudformation 创建 S3 存储桶来托管网站,然后将 Hugo 网站上传到其中。当我在终端中手动运行管道中的步骤并在每个步骤之间有延迟时,它会成功发生。但是当它发生在 Bitbucket 管道上时,它会给出错误,指出我尝试上传内容的 S3 存储桶不可用。当我检查 AWS 时,该存储桶实际上就在那里。这意味着 Cloudformation 已正常工作。但是当文件开始复制时,存储桶可能无法用于上传文件。这是我的假设。有没有解决这个问题的方法。在本地执行此操作时,我可以在 cloudformation 创建和文件复制这两个命令之间等待。但是在Bitbucket pipeline环境下如何处理呢。以下是我的管道代码。
pipelines:
pull-requests:
'**':
- step:
script:
- aws cloudformation create-stack --stack-name demo-web --template-body file://cloudformation.json --parameters ParameterKey=S3BucketName,ParameterValue=demo-web
- hugo
- aws s3 cp public/ s3://demo-web/ --recursive
Run Code Online (Sandbox Code Playgroud)
如何以正确的方式处理这种情况。对于这种情况有解决方法吗?或者我发现的问题并不是实际问题。
bitbucket amazon-web-services aws-cloudformation devops bitbucket-pipelines