小编dan*_*any的帖子

如何从Mongoose中的集合中排除一个特定字段?

我有一个带Mongoose ODM的NodeJS应用程序(Mongoose 3.3.1).我想从我的集合中检索除1之外的所有字段.例如:我有一个集合Product有6个字段,我想要选择除"Field"字段之外的所有字段.我使用" 排除 "方法,但得到错误..这是我的代码.

    var Query = models.Product.find();
    Query.exclude('title Image');

    if (req.params.id) {
        Query.where('_id', req.params.id);
    }


    Query.exec(function (err, product) {
        if (!err) {
            return res.send({ 'statusCode': 200, 'statusText': 'OK', 'data': product });
        } else {
            return res.send(500);
        }
    });
Run Code Online (Sandbox Code Playgroud)

但这会返回错误

Express
500 TypeError: Object #<Query> has no method 'exclude'.........
Run Code Online (Sandbox Code Playgroud)

我也试过,var Query = models.Product.find().exclude('title','Image');var Query = models.Product.find({}).exclude('title','Image'); 而得到同样的错误.如何从Mongoose中的集合中排除一个/(两个)特定字段.

javascript mongoose mongodb mongodb-query

50
推荐指数
4
解决办法
5万
查看次数

MongoError,错误:E11000重复键错误

我有像这样的MongoDb架构

    var User = new Schema({
    "UserName": { type: String, required: true },
    "Email": { type: String, required: true, unique: true },
    "UserType": { type: String },
    "Password": { type: String }
});
Run Code Online (Sandbox Code Playgroud)

我正在尝试创建一个新用户 这是在NodeJs中使用mongoose ODM完成的 这是用于创建的代码:

    controller.createUser = function (req, res) {

    var user = new models.User({
        "UserName": req.body.UserName.toLowerCase(),
        "Email": req.body.Email.toLowerCase(),
        "UserType": req.body.UserType.toLowerCase()
    });
    models.User.findOne({ 'Email': user.Email }, function (err, olduser) {
                    if (!err) {
                        if (olduser) {
                            res.send({ 'statusCode': 409, 'statusText': 'Email Already Exists' });
                        }
                        else if …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js

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

选择MongooseJs中的特定字段

我有一个使用Mongoose ODM的NodeJS应用程序.我想从集合中选择三个特定字段.我的收藏示例是"用户",其字段为"_id","用户名","电子邮件","用户类型","密码"...我只想选择"用户名","电子邮件"和"用户类型".这是我的代码

 var query = models.User.find({}).select('UserName', 'Email', 'UserType');
Run Code Online (Sandbox Code Playgroud)

这与mongoose 2版本工作正常,我更新到Mongodb 2.2和Mongoose 3.3.1.现在我收到了错误

500 TypeError: Invalid select() argument. Must be a string or object.
Run Code Online (Sandbox Code Playgroud)

有人可以建议一个解决方案?

javascript mongoose mongodb node.js

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

如何在c#中更改Excel列的格式?

我正在动态创建一个excel表并将值插入到同一个.但是某些单元格中的值以错误的格式插入.以下是我的Excel表格在此输入图像描述 所选单元格中的值应为0002-9343,但它将插入到2月43日.这是由于excel表格中该列(列-D)的格式错误.在输入数据之前,我需要将整个列-D(标题D"data2"下的所有单元格)更改为"文本格式".以下是创建Excel工作表和插入数据的代码

excel = new Application();
            excel.Visible = false;
            wb = (_Workbook)(excel.Workbooks.Add(System.Reflection.Missing.Value));
            sheet = wb.Sheets.Add();
            sheet.Name = "TestSheet1";
            sheet.Cells[1, "A"].Value2 = "Id";
            sheet.Cells[1, "B"].Value2 = "Name";
            sheet.Cells[1, "C"].Value2 = "Data1";
            sheet.Cells[1, "D"].Value2 = "Data2";
            sheet.Cells[1, "E"].Value2 = "Data3";

            for (int i = 0; i < 10; i++)
            {
                    id = i;
                    result = object;
                    data = JsonConvert.DeserializeObject(result);

        name  = (data != null) ? data.name : string.Empty;
                    data1 = (data != null) ? data.data1 : string.Empty;
                    data2 …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc excel

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

取mongoosejs中列的总和/平均值

我有一个带有字段student_id,Subject,Mark的MongoDB集合"Marks".我想要特定学生得分的平均值.我的项目在NodeJs中,我使用MongooseJS进行对象建模.如何使用MOngooseJS查询?

     Student_id   Subject  Mark
     111          AAA      9
     111          BBB      5
     111          CCC      7
     222          AAA      10
     222          CCC      6
     222          BBB      8
Run Code Online (Sandbox Code Playgroud)

我希望学生得分的平均分(id)111即((9 + 5 + 7)/ 3)= 7)

javascript mongoose mongodb node.js

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