私はpostgresで作業するためにエクスプレスセッションを取得しようとしています。数時間のデバッグの後、問題のすべてを解決しました。すべてはなく、次のように動作します:私はpgAdminで内部でこのクエリを実行する場合Sequelizeとexpress-sessionモデル
私のセッションは、私がsequelizeでモデルを作成する場合、それがセッションを保存しません
CREATE TABLE "sessions" (
"sid" varchar NOT NULL COLLATE "default",
"sess" json NOT NULL,
"expire" timestamp(6) NOT NULL
)
WITH (OIDS=FALSE);
ALTER TABLE "sessions" ADD CONSTRAINT "session_pkey" PRIMARY KEY ("sid")
NOT DEFERRABLE INITIALLY IMMEDIATE;
正しく動作します。私は確信しているし、私はモデル定義にいくつかの部分が欠けていることは明らかであり、すべての入力を感謝します。コードの
var Sessions = database.define('sessions', {
sid: {
type: Sequelize.STRING,
primaryKey: true
},
expire: {
type: Sequelize.DATE,
allowNull: true
},
sess: Sequelize.JSON
});
return Sessions;
残りは私がどのように足りない部分を含めるには考えているとsequelize文書が話題に短いのいずれかにあるか、私は十分な睡眠を持っていなかったこの
var pgSession = require('connect-pg-simple')(expressSession),
sessionSettings = {
store: new pgSession ({
conString: 'postgres://' + dbConfig.user +':' + dbConfig.password+ '@' + dbConfig.host+ ':5432/' + dbConfig.database,
tableName : 'sessions'
}),
secret: 'whatevergoeshere',
resave: false,
saveUninitialized: false,
cookie: {
maxAge: 7*24*60*60*1000
}
};
app.use(expressSession(sessionSettings));
での作業します
その他のコードは要望に応じて利用できますが、私がモデルを続行して強制的に強制してクエリを使用しないと、何も影響を受けません。
また、ここでは下の1がsequelize
続ける](https://github.com/mweibel/connect-session-sequelize)? –
私の質問があなたのコメントを反映するように更新しました –
同じ問題が発生した別のプロジェクトのソースコードで更新されました。 –