gpt4 book ai didi

mysql - 尝试使用书架将经过身份验证的用户传递给nodejs中的数据库 Controller

转载 作者:行者123 更新时间:2023-11-29 22:35:55 25 4
gpt4 key购买 nike

我正在创建一个 Web 应用程序,它首先允许用户使用存储在 mysql 数据库中的凭据登录。然后,当他们转到/crm 时,我尝试传递一个字段值,该值指定用户可以访问的数据库,通过实例化 bookshelf/knex 数据库连接。

crmDB.js

var knex= require('knex')({
client: 'mysql',
connection:{
host: 'localhost', // your host
user: 'the user', // your database user
password: 'the password, // your database password
database: req.user.db, // the database name per the user.db field
charset: 'UTF8_GENERAL_CI'
}
});

var Bookshelf = require('bookshelf')(knex);

module.exports.crmDB = Bookshelf;

我可以这样做吗?我在 route 放置什么?

var crm = function (req, res, next) {
if(req.isAuthenticated()){


} else {
res.redirect('/signin');
}
}

最佳答案

在route.js中

var crm = function (req, res, next) {
if(req.isAuthenticated()){
var user = req.user;
module.exports = {
user:user
};
var crmModel = require('../server/models/crm');
} else {
res.redirect('/signin');
}
}

然后在 crmDB.js 中

var db = require('../../client/routes').user.toJSON().db;

var knex= require('knex')({
client: 'mysql',
connection:{
host: 'localhost', // your host
user: 'user', // your database user
password: 'password', // your database password
database: db,
charset: 'UTF8_GENERAL_CI'
}
});

关于mysql - 尝试使用书架将经过身份验证的用户传递给nodejs中的数据库 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29552513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com