我正在尝试创建简单的REST api,但是当我尝试编译我的代码时,我正在
frontpage.d(15,3):错误:未定义标识符'tmp',你的意思是 别名'cmp'?
这是我的代码:
module service.frontpage;
import vibe.d;
@path("/api")
interface IFrontPageAPI
{
Json getHome();
}
class FrontPageAPI : IFrontPageAPI
{
this(auto tmp)
{
auto collect = tmp;
}
Json getHome()
{
logInfo("Getting HomePage from DB");
Bson query = Bson(["_id" : Bson("homepage")]);
auto result = collect.find(query);
logInfo("Iterating results...");
foreach (i, doc; result.byPair)
logInfo("Item %d: %s", i, doc.toJson().toString());
return result.toJson();
}
}
有人可以帮助我吗? tmp是传递mongoDB集合处理程序的临时变量。
答案 0 :(得分:2)
与DLearn上的答案相同。
你需要 - 使用类变量 - 使用类型代替auto(这里是Mongo集合) - 返回一个合适的Json
看看this interactive example - 随意玩它。没有输出意味着没有编译错误。