小编qts*_*qts的帖子

Passport和connect-flash:req.flash不是一个函数

我正在学习flash消息传递,passport并在运行我的脚本时遇到此错误:

req.flash is not a function
Run Code Online (Sandbox Code Playgroud)

这是我的配置:

var flash=require("connect-flash");
app.use(flash());

passport.use(new LocalStrategy(function(req,username, password,done) {
process.nextTick(function() {
    UserDetails.findOne({'username': username}, function(err, user) {
        if (err) {
            return done(err);
        }          
        if (!user) {
            return done(null, false,req.flash('message','Invalid username or password'));
        }
        if (user.password != password) {
            return done(null, false,req.flash('message','Invalid username or password' ));
        }
        return done(null, user);
    });
});
}));
Run Code Online (Sandbox Code Playgroud)

我的路线:

app.get('/', function (req, res) {
res.render('login',{ message: req.flash('message') });
});
Run Code Online (Sandbox Code Playgroud)

我的策略:

app.post('/login', function(req,res,next){
passport.authenticate('local', function(err, user) {
    if (err) …
Run Code Online (Sandbox Code Playgroud)

node.js passport.js

16
推荐指数
2
解决办法
3万
查看次数

合并字典中的数据帧

假设我有一个数据帧字典:

  {'df1': name         color    type
          Apple        Yellow   Fruit,
   'df2': name         color    type
          Banana       Red      Fruit,
   'df3': name         color    type
          Chocolate    Brown    Sweet
    ......}
Run Code Online (Sandbox Code Playgroud)

我想将它们合并为一个像这样:

  name         color    type
  Apple        Red      Fruit 
  Banana       Yellow   Fruit
  Chocolate    Brown    Sweet
Run Code Online (Sandbox Code Playgroud)

我可以手动完成,如下所示:

  merge1=pd.merge('df1','df2')
  merge2=pd.merge('merge1','df3')
  ...
Run Code Online (Sandbox Code Playgroud)

但有没有办法自动压缩字典并合并?任何帮助表示赞赏.

python pandas

12
推荐指数
1
解决办法
1万
查看次数

如何绘制滞后时间序列?

我试图绘制一些用于探索性分析的快速图表,并提出以下问题:

如何在ggplot中绘制滞后时间序列?我想做这样的事情:

 ggplot(data,aes(x=xdata,y=xdata-1)+geom_point()
Run Code Online (Sandbox Code Playgroud)

但是xdata-1减去1 xdata而不是读取先前的xdata值.

ggplot似乎没有一个lag.plot等价物,我确实找到了一个gglagplotggfortify包中调用的函数,似乎正是我想要的,但在最新版本的R(目前为3.2)中没有.

r ggplot2

4
推荐指数
1
解决办法
1923
查看次数

猫鼬:只返回文档中的键

我有一个文件如下:

var data={"john:"friend",
          "fruit":"banana",
           "tv":[{"livingroom":"led",
                   "bedroom":"lcd"
                   "fruit":"banana"}]}
Run Code Online (Sandbox Code Playgroud)

我试图返回一个包含所有唯一键的数组,如下所示:

["john","fruit,livingroom,bedroom]
Run Code Online (Sandbox Code Playgroud)

所以我有以下代码:

var mykeys=[];
database.find({},function(result){
    result.forEach(function(each){
         for (key in each){
             mykeys.push(key)
         };
    }});
Run Code Online (Sandbox Code Playgroud)

但这会返回一大堆我不需要的对象,例如:

[$__, isNew, errors, _doc, $__original_save, save, _pres, _posts....]
Run Code Online (Sandbox Code Playgroud)

无论如何我可以摆脱文档中没有的这些键吗?我知道这里的mapreduce答案MongoDB get the names of all the keys in a MongoDB collection但我不知道如何将它翻译成猫鼬。AFAIK 猫鼬不支持 runCommand。

mongoose mongodb node.js

1
推荐指数
1
解决办法
4860
查看次数

标签 统计

node.js ×2

ggplot2 ×1

mongodb ×1

mongoose ×1

pandas ×1

passport.js ×1

python ×1

r ×1