如何使用 Sails js 将 bigserial 用作主键 ID
How to use bigserial for primary key id with Sails js
我有以下模型定义:
module.exports = {
attributes: {
id: {
type: 'bigserial',
primaryKey: true
},
email: {
type: 'email',
required: true,
unique: true
}
}
当我使用 life sails 时,它没有给我关于 "bigserial" 数据类型的警告,即使它没有正式记录。
但是,在 Postgresql 上创建的 table 上,列 "id" 的类型为 "text"。我如何获得 bigserial 主键?
您可以在数据库中使用此命令`ALTER TABLE your_table ADD COLUMN key_column BIGSERIAL PRIMARY KEY;
在 Sails 模型中,您可以使用这样的东西:
module.exports = {
connection: yourConnection,
tableName: yourTableName,
attributes: {
id: {
type: 'integer',
autoIncrement: true,
primaryKey: true
},
email: {
type: 'email',
required: true,
unique: true
}
}
注意:您需要先在 config/connections.js
上设置数据库连接配置
somePostgresqlServer: {
adapter: 'sails-postgresql',
host: 'YOUR_POSTGRES_SERVER_HOSTNAME_OR_IP_ADDRESS',
user: 'YOUR_POSTGRES_USER',
password: 'YOUR_POSTGRES_PASSWORD',
database: 'YOUR_POSTGRES_DB'
}
和运行 npm install sails-postgresql
在您的项目文件夹中
我有以下模型定义:
module.exports = {
attributes: {
id: {
type: 'bigserial',
primaryKey: true
},
email: {
type: 'email',
required: true,
unique: true
}
}
当我使用 life sails 时,它没有给我关于 "bigserial" 数据类型的警告,即使它没有正式记录。
但是,在 Postgresql 上创建的 table 上,列 "id" 的类型为 "text"。我如何获得 bigserial 主键?
您可以在数据库中使用此命令`ALTER TABLE your_table ADD COLUMN key_column BIGSERIAL PRIMARY KEY;
在 Sails 模型中,您可以使用这样的东西:
module.exports = {
connection: yourConnection,
tableName: yourTableName,
attributes: {
id: {
type: 'integer',
autoIncrement: true,
primaryKey: true
},
email: {
type: 'email',
required: true,
unique: true
}
}
注意:您需要先在 config/connections.js
somePostgresqlServer: {
adapter: 'sails-postgresql',
host: 'YOUR_POSTGRES_SERVER_HOSTNAME_OR_IP_ADDRESS',
user: 'YOUR_POSTGRES_USER',
password: 'YOUR_POSTGRES_PASSWORD',
database: 'YOUR_POSTGRES_DB'
}
和运行 npm install sails-postgresql
在您的项目文件夹中