目前,我正在使用Vibe.d制作一个网站,该网站有一个Response
用于处理每个请求的类。看起来像这样:
import vibe.d;
void index(HTTPServerRequest req, HTTPServerResponse res)
{
res.render!("index.dt", req);
}
shared static this()
{
auto router = new URLRouter;
router.get("/", &index);
auto settings = new HTTPServerSettings;
settings.port = 8080;
listenHTTP(settings, router);
}
在示例中,我将 a 传递const string
"index.dt
给res.render!
方法,但我想传递一个变量:
void render(string action, HTTPServerResponse res) {
res.render!(action);
}
但我收到以下错误:
Error: variable action cannot be read at compile time
在我打电话的每个地方render
,我都对字符串进行了硬编码:
render("foo.dt");
但这并不能让编译器满意。知道我怎样才能完成这项工作吗?