2011-09-26 15 views
0

我一直在使用expressJS和連接 - 蒙戈插件保存會話數據的在MongoDB中,如下所示,有什麼方法可以在NodeJS中更改默認會話表字段名稱?

var conf = { 
db: { 
    db: dbconfig.mongo_db_name, 
    host: dbconfig.mongo_host, 
    username: '', 
    password: '', 
    collection: 'sessionDataTable' 
}, 
    secret: '076ee61d63aa10a125ea872411e433b9',  
}; 

app.configure(function(){ 
    app.use(express.session({ 
     secret: conf.secret, 
     maxAge: new Date(Date.now() + 3600000), 
     store: new MongoStore(conf.db) 
    })); 
}); 

在連接 - 蒙戈,他們有權選擇只更改表名,如果我想添加/改變「sessionDataTable」中的字段名稱,那我該如何實現它?請幫助我!

+1

您需要擁抱約定而不是配置。爲什麼你不能只使用會話管理庫喜歡使用的字段名? – Thilo

+0

@Thilo:Mongo Sharding中添加的表「sessionDataTable」。 – Raja

+1

我明白了。也許會問「如何爲連接mongo設置分片?」會得到更好的答案。 – Thilo

回答

2

要向會話添加額外數據,您必須使用connect提供的req對象的session屬性。

E.g.

app.get('/', function(req, res) { 
    req.session.name = 'Test Name'; 
}); 

然後,這應該添加到您在MongoStore中定義的集合。

這是你的意思嗎?

+0

感謝您的回覆。但我需要爲表添加字段「collection:'sessionDataTable'」 – Raja

+2

如果在mongo中創建'sessionDataTable'集合,那麼執行上述操作應將其添加到會話正在使用的任何集合中。 – domharrington

相關問題