1
正在使用Bookshelf.js ORM我Express.js的應用程序,在書架ORM只給例如用於定義模型和協會書架ORM如何定義模型屬性和數據類型
我沒有找到任何地方,如何提前定義模型的屬性和數據類型一樣
name: {
type: string
}
age: {
type: number
}
需要幫助的..謝謝..
正在使用Bookshelf.js ORM我Express.js的應用程序,在書架ORM只給例如用於定義模型和協會書架ORM如何定義模型屬性和數據類型
我沒有找到任何地方,如何提前定義模型的屬性和數據類型一樣
name: {
type: string
}
age: {
type: number
}
需要幫助的..謝謝..
你不能。屬性及其類型取自數據庫模式的。在書架中定義屬性最接近的是關鍵定義:主鍵和外鍵。但即使這樣,你也只限於他們的名字和關鍵語義,這些類型決定於他們的數據庫類型。
如果您想要在代碼中定義它們,您可以使用Knex Schema Builder和Migrations功能。像:
// 0001_people.js
'use strict';
exports.up = function(knex, Promise) {
return knex.schema.createTable('people', function(table) {
table.increments('id').primary();
table.string('name').unique().notNullable();
table.integer('age').notNullable();
});
};
exports.down = function(knex, Promise) {
return knex.schema.dropTable('people');
};
但請記住,這些定義並不依賴於相應的書架模型。你的責任是保持同步。