【问题标题】:Simple select from MongoDB with vibed使用 vibed 从 MongoDB 中进行简单选择
【发布时间】:2015-07-12 20:55:59
【问题描述】:

我正在学习如何从 vibed 使用 MongoDB。我写了一个简单的应用程序,我认为应该做查找操作。但是当我运行它时,我得到了错误:Querying uninitialized MongoCollection.。我做错了什么?

import vibe.core.log;
import vibe.db.mongo.mongo;
import vibe.d;
import std.stdio;

import std.array;

void main()
{
    MongoCollection m_posts;
    foreach(p;m_posts.find("{}"))
    {
        writeln(p);
    }
}

【问题讨论】:

    标签: mongodb d vibed


    【解决方案1】:

    vibe.d 存储库中有一个mongo example

    归结为这种模式:

    void main()
    {   
        auto db = connectMongoDB("localhost").getDatabase("test");
        auto coll = db["collection"];
        foreach (i, doc; coll.find("{}"))
            writeln("Item %d: %s", i, doc.toJson().toString());      
    }
    

    在您的 sn-p 中,您尝试使用集合对象而没有实际连接到数据库并从那里检索它。这正是错误的含义。

    【讨论】:

      【解决方案2】:

      您刚刚创建了 MongoCollection 对象,并没有使用任何东西对其进行初始化。这就是错误与“未初始化集合”有关的原因。您应该将其连接到数据库并将一些数据放入其中。看看http://vibed.org/api/vibe.db.mongo.collection/MongoCollection 的例子。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-19
        • 2014-11-30
        • 2015-09-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多