ä½¿ç¨ JavaScript
TypeORM ä¸ä» å¯ä»¥ç¨äº TypeScriptï¼è¿å¯ä»¥ç¨äº JavaScriptã ä¸å齿¯ä¸æ ·çï¼é¤äºéè¦çç¥ç±»åï¼å¦æä½ çå¹³å°ä¸æ¯æ ES6 ç±»ï¼é£ä¹ä½ éè¦å®ä¹å ·æææå¿ éå æ°æ®ç对象ã
app.jsâ
var typeorm = require("typeorm");
typeorm
.createConnection({
type: "postgres",
host: "localhost",
port: 5432,
username: "test",
password: "admin",
database: "test",
synchronize: true,
entities: [
require("./entity/Post"),
require("./entity/Category")
]
})
.then(function(connection) {
var category1 = {
name: "TypeScript"
};
var category2 = {
name: "Programming"
};
var post = {
title: "Control flow based type analysis",
text: "TypeScript 2.0 implements a control flow-based type analysis for local variables and parameters.",
categories: [category1, category2]
};
var postRepository = connection.getRepository("Post");
postRepository
.save(post)
.then(function(savedPost) {
console.log("Post has been saved: ", savedPost);
console.log("Now lets load all posts: ");
return postRepository.find();
})
.then(function(allPosts) {
console.log("All posts: ", allPosts);
});
})
.catch(function(error) {
console.log("Error: ", error);
});
entity/Category.jsâ
var EntitySchema = require("typeorm").EntitySchema;
module.exports = new EntitySchema({
name: "Category",
columns: {
id: {
primary: true,
type: "int",
generated: true
},
name: {
type: "varchar"
}
}
});
entity/Post.jsâ
var EntitySchema = require("typeorm").EntitySchema;
module.exports = new EntitySchema({
name: "Post",
columns: {
id: {
primary: true,
type: "int",
generated: true
},
title: {
type: "varchar"
},
text: {
type: "text"
}
},
relations: {
categories: {
target: "Category",
type: "many-to-many",
joinTable: true,
cascade: true
}
}
});
æ¨å¯ä»¥æ¥çæ¤ç¤ºä¾typeorm/javascript-example以äºè§£æ´å¤ä¿¡æ¯ã