小编Mak*_*mat的帖子

在passport.js中使用令牌验证电子邮件

我只是在寻找解决方案,这使得验证电子邮件带有令牌,用于我在本地的身份验证.在miss.js中是否有一些节点的插件或组件可以让我验证更容易?或者我必须自己做?

我的控制器

exports.postSignup = function(req, res, next) {
  req.assert('email', 'Email is not valid').isEmail();
  req.assert('password', 'Password must be at least 4 characters long').len(4);
  req.assert('confirmPassword', 'Passwords do not match').equals(req.body.password);

  var errors = req.validationErrors();

  if (errors) {
    req.flash('errors', errors);
    return res.redirect('/signup');
  }

  var user = User.build({
    email: req.body.email,
    password: req.body.password,
  });

  User
  .find({ where: { email: req.body.email } })
  .then(function(existingUser){
    if (existingUser) {
      req.flash('errors', { msg: 'Account with that email address already exists.' });
      return res.redirect('/signup');
    }

    user
    .save()
    .complete(function(err){
      if (err) return …
Run Code Online (Sandbox Code Playgroud)

javascript token node.js passport-local passport.js

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

在sequelize ORM中进行多次计数查询

我想创建一个查询,它能够在sequelize.js中一次计算每月每天的记录数量.不喜欢:

Record.count({ where: { createdAt: { $like: '2015-04-14%' } } }).then(function(c) {
  console.log("2015-04-14 have been created" + c + "records");
});

Record.count({ where: { createdAt: { $like: '2015-04-15%' } } }).then(function(c) {
  console.log("2015-04-15 have been created" + c + "records");
});


Record.count({ where: { createdAt: { $like: '2015-04-16%' } } }).then(function(c) {
  console.log("2015-04-16 have been created" + c + "records");
});

....
....
Run Code Online (Sandbox Code Playgroud)

我想进行一次性返回行数的查询,而不是在30个查询中询问数据库中的数据.有可能通过交易来实现吗?

我将它用于图表目的,所以最好的输出就像:

[500, 300, 400, 550....]
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

postgresql charts node.js sequelize.js c3.js

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

CSS3手风琴与Javascript(硬件加速器)手风琴的性能

哪种版本的手风琴最流畅,最快,没有滞后?

更好pure CSS3还是这样的javascript accelerated

Fiddle

哪个性能最好?

感谢您的任何意见!

javascript css3

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

Express + PostgreSQL的最佳会话存储中间件

我正在寻找生产应用程序的sessionstore,因为我有错误消息:

警告:connect.session()MemoryStore不是为生产环境设计的,因为它会泄漏内存,并且不会扩展到单个进程

我的代码:

var express              = require('express');
var ECT                  = require('ect');
var cookieParser         = require('cookie-parser');
var compress             = require('compression');
var session              = require('express-session');
var bodyParser           = require('body-parser');
var _                    = require('lodash');
var passport             = require('passport');
var expressValidator     = require('express-validator');
var connectAssets        = require('connect-assets');

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(expressValidator());
app.use(methodOverride());
app.use(cookieParser());
app.use(session({
  resave: true,
  saveUninitialized: true,
  secret: secrets.sessionSecret,
}));
app.use(passport.initialize());
app.use(passport.session());

var app = module.exports = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);

server.listen(app.get('port'), function() {
  console.log('Express server …
Run Code Online (Sandbox Code Playgroud)

postgresql node.js express

5
推荐指数
2
解决办法
4102
查看次数

sequelize.js中的自定义json响应

我使用sequelize从mysql db获取json.所以我有两个模型MenuProduct进一步的关联,如:

Menu.js

  classMethods: {
    associate: function(models) {
      Menu.hasMany(models.Product, {foreignKey: 'menu_id'})
    }
  }
Run Code Online (Sandbox Code Playgroud)

Product.js

  classMethods: {
    associate: function(models) {
      Product.belongsTo(models.Menu, {foreignKey: 'menu_id'})
    }
  },
  // IF I ADD BELOW CODE I HAVE ERROR: Possibly unhandled ReferenceError: menu is not defined
  instanceMethods: {
     toJSON: function () {
       var values = this.get();
       if (this.Menu) {
         values.icon = menu.icon;
       }

       return values;
     }
   }
Run Code Online (Sandbox Code Playgroud)

 Product.findAll({
      where: { /* id: */ },
      include: [
          { model: Menu }
      ] …
Run Code Online (Sandbox Code Playgroud)

javascript mysql node.js sequelize.js

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

从mysql迁移后,postgres数据库不能正常工作

我在sequelize中将MySQL数据库更改为postgreSQL.但是在迁移之后我在表或模型中出现了大写和小写的第一个字母...在我的MySQL版本正常工作之前但是在迁移之后我得到了错误消息: 500 SequelizeDatabaseError: relation "Users" does not exist

我的用户型号:

module.exports = function(sequelize, Sequelize) {
  var User = sequelize.define("User", {
    // profile
    userlevel: Sequelize.STRING,
    restaurant: Sequelize.STRING,
    access: Sequelize.STRING,
    optionsid: Sequelize.STRING,
    email: Sequelize.STRING,
    name: Sequelize.STRING,
    gender: Sequelize.STRING,
    location: Sequelize.STRING,
    website: Sequelize.STRING,
    picture: Sequelize.STRING,
    // Oauth
    password: {
      type: Sequelize.STRING,
      set: function(v) {
        var salt = bcrypt.genSaltSync(5);
        var password = bcrypt.hashSync(v, salt);
        return this.setDataValue('password', password);
      }
    },
    .....
Run Code Online (Sandbox Code Playgroud)

迁移文件:

"use strict";
module.exports = {
  up: function(migration, DataTypes, done) {
    migration.createTable("users", {
      id: { …
Run Code Online (Sandbox Code Playgroud)

mysql postgresql sequelize.js postgresql-9.3

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

仅当 active = true 时,才将 ORM 包含模型序列化

我怎样才能找到所有带有 id: 1 的订单,并且只有当这个项目有 active = true 时才包含项目?否则会有空数组...

Order.findAll({
    where: { id: 1 },
    include: [
      { model: Item, where: sequelize.and({'active' : true }) }
    ]
}).then(function(order) {
    callback(null, order);
});
Run Code Online (Sandbox Code Playgroud)

这仅向我显示了一些带有 active = true 的项目的订单。我想显示所有带有 id: 1 和 items 作为子数组的订单......

postgresql orm node.js sequelize.js

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

从数组中创建表中的多行?

可以使用sequelize.js从数组中一次添加多行吗?这是我的代码:

  var user = User.build({
    email: req.body.email,
    password: req.body.password,
    userlevel: '3',
  });

  User
  .find({ where: { email: req.body.email } })
  .then(function(existingUser){

    if (existingUser) {
      return res.redirect('/staff');
    }

    user
    .save()
    .complete(function(err){
      if (err) return next(err);
      res.redirect('/staff');
    });
  }).catch(function(err){
    return next(err);
  });
Run Code Online (Sandbox Code Playgroud)

谢谢你的任何建议!

javascript orm sequelize.js

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