如何从angularjs控制器连接到postgres数据库

时间:2014-04-22 22:21:01

标签: angularjs postgresql heroku

我想在Heroku托管的应用上的Postgres数据库中存储一些用户值,名称和电子邮件。这是我控制器中的代码;

var pg = require('pg');
...
$scope.addUser = function() {
    pg.connect(process.env.DATABASE_URL, function(err, client) {
        var query = client.query('INSERT INTO users (name, email) VALUES (\'' + $scope.user.name + '\', \'' + $scope.user.email + '\')');

        query.on('row', function(row) {
            console.log(JSON.stringify(row));
        });
    });
};

我收到一条错误,指出未定义require,我知道这是因为客户端不支持。我尝试在控制器文件上使用browserify,然后更新index.html中的<script>标记来源文件。这导致了另一个错误。

删除var pg = require('pg');会产生&#34; ReferenceError:pg未定义&#34;。我只想从我的应用程序连接到Postgres数据库并插入一些值。我是在正确的轨道上还是应该以不同的方式进行此事?

1 个答案:

答案 0 :(得分:2)

请参阅Can I use PostgreSQL (pg) in the client-side (express/node.js),了解为何不能让客户端直接连接到您的数据库。你想要写一个(轻量级)服务器应用程序(可能使用Node.js),或者你应该考虑像FirebaseIrisCouch这样的后端即服务(BaaS),这样你就不会根本不需要开发后端。