2011-09-26 2 views
0

내가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) 
    })); 
}); 

연결 - 몽고에서, expressJS을 사용하여 다음과 같이 MongoDB를에 세션 데이터의 내용을 저장하려면 플러그인 - 몽고의 연결되어, 그들은 내가 추가하려는 경우에만 테이블 이름을 변경하는 옵션을 부여했다/"sessionDataTable"에서 필드 이름을 변경 한 다음 어떻게해야합니까? 이것 좀 도와주세요!

+1

컨벤션에 대한 관행을 포용해야합니다. 세션 관리 라이브러리에서 사용하기 좋아하는 필드 이름을 사용하지 않는 이유는 무엇입니까? – Thilo

+0

@Thilo : Mongo Sharding에 "sessionDataTable"테이블이 추가되었습니다. – Raja

+1

알겠습니다. 어쩌면 "연결 몽고에 대한 샤딩 설정 방법"을 요청할 수 있습니다. 더 나은 답변을 얻을 수 있습니다. – Thilo

답변

2

세션에 추가 데이터를 추가하려면 connect가 제공하는 req 객체의 session 등록 정보를 사용해야합니다.

예.

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

그러면 MongoStore에서 정의한 컬렉션에 추가해야합니다.

이게 무슨 뜻이야?

+0

답장을 보내 주셔서 감사합니다. 하지만 난 테이블 "컬렉션에 대한 필드를 추가해야합니다 : 'sessionDataTable'" – Raja

+2

'sessionDataTable'컬렉션이 mongo에서 생성되면 위 작업을 수행하면 세션이 사용하는 컬렉션에 추가해야합니다. – domharrington

관련 문제