knex-postgis 项目教程
knex-postgispostgis extension for knex项目地址:https://gitcode.com/gh_mirrors/kn/knex-postgis
1. 项目的目录结构及介绍
knex-postgis/
├── src/
│ ├── index.js
│ ├── knexfile.js
│ ├── migrations/
│ ├── seeds/
│ └── utils/
├── package.json
├── README.md
└── .env
- src/: 源代码目录,包含项目的所有源文件。
- index.js: 项目的入口文件。
- knexfile.js: Knex 配置文件,用于定义数据库连接和迁移设置。
- migrations/: 数据库迁移文件目录。
- seeds/: 数据库种子文件目录,用于初始化数据。
- utils/: 工具函数目录,包含一些辅助函数。
- package.json: 项目依赖和脚本配置文件。
- README.md: 项目说明文档。
- .env: 环境变量配置文件。
2. 项目的启动文件介绍
index.js
const knex = require('knex');
const knexPostgis = require('knex-postgis');
const config = require('./knexfile');
const environment = process.env.NODE_ENV || 'development';
const environmentConfig = config[environment];
const db = knex(environmentConfig);
const st = knexPostgis(db);
module.exports = { db, st };
- 引入依赖: 引入
knex
和knex-postgis
模块。 - 配置环境: 根据环境变量
NODE_ENV
选择配置。 - 初始化数据库连接: 使用
knex
初始化数据库连接。 - 安装 PostGIS 扩展: 使用
knexPostgis
安装 PostGIS 扩展。 - 导出对象: 导出数据库连接对象
db
和 PostGIS 对象st
。
3. 项目的配置文件介绍
knexfile.js
require('dotenv').config();
module.exports = {
development: {
client: 'pg',
connection: {
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME
},
migrations: {
directory: './src/migrations'
},
seeds: {
directory: './src/seeds'
}
},
production: {
client: 'pg',
connection: process.env.DATABASE_URL,
migrations: {
directory: './src/migrations'
},
seeds: {
directory: './src/seeds'
}
}
};
- 环境变量: 使用
dotenv
模块加载环境变量。 - 开发环境配置: 定义开发环境的数据库连接和迁移、种子文件目录。
- 生产环境配置: 定义生产环境的数据库连接和迁移、种子文件目录。
通过以上配置,项目可以根据不同的环境变量连接到相应的数据库,并进行数据库迁移和种子数据的初始化。
knex-postgispostgis extension for knex项目地址:https://gitcode.com/gh_mirrors/kn/knex-postgis