我想在 Angular Web 应用程序中显示和编辑来自现有 PostgreSQL 数据库的数据。 我对 Angular 和东西完全陌生。 我已经下载了 pg 和 express。
查看此页面后:https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/mongoose 我想我需要 jugglingdb 将数据库连接到 Angular :https://npm.taobao.org/package/jugglingdb或 https://www.npmjs.com/package/connect-jugglingdb -> 更具体:Juggling-db with postgres: https://npm.taobao.org/package/jugglingdb-postgres
所以我创建了一个名为 postgres.js 的新文件:
var Schema = require('jugglingdb').Schema;
var schema = new Schema('postgres', {
database: 'mydatabase',
username: 'myusername',
host: 'myhostname', //I don't use the local user
port: XXXX,
password: s.password,
ssl: false
});
var Model = schema.define('Model', {
realNumber: {type: Number, dataType: 'float'}
});
然后我在这个答案的帮助下尝试了它:Restful Api express postgres database 所以我创建了一个名为“dbconnector.js”的文件
const express = require('express')
const bodyParser = require('body-parser')
const app = express()
const port = 1234
const db = require('./dbconnector')
// 'db' is exported from a file such as
// dbconnector.js.
app.get('/things', db.getThings)
//In dbconnector.js:
const Pool = require('pg').Pool
const pool = new Pool({
user: 'myuser',
host: 'myhost',
database: 'mydb',
password: 'mypassword',
port: 5432,
})
const getThings = (request, response) => {
pool.query('SELECT * FROM public.regulation',
(error, results) =>
{
if (error) {
throw error
}
response.status(200).json(results.rows)
})
}
module.exports = {
getThings
}
我已经搜索、阅读并尝试了很多教程。 但无论我尝试什么 - 我都无法在 Web 应用程序中显示数据库中的数据。 任何想法我将如何进行? 你知道完整的指南吗(连接数据库和显示数据?) 或者您有任何链接或提示吗?
编辑 发现这个非常有用的下载示例链接:https://grokonez.com/frontend/angular/angular-6/angular-6-httpclient-postgresql-node-js-express-sequelize-crud-apis-post-get-put-delete
最佳答案
Angular 应用程序通常在浏览器中运行,而您的数据库位于服务器上。简而言之,您通常通过为您的应用程序构建后端来将它们连接起来,该后端通过 API 向消费者公开任何所需的数据。
从您发布的链接看来,您正在使用 NodeJS 作为后端,因此您可以考虑使用 express 创建 RESTful API .
关于node.js - 如何将数据库连接到 Angular Web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57853681/