現在、私はVibe.dを使用して Web サイトを作成しています。この Web サイトには、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);
}
例ではconst string "index.dt、res.render!メソッドに a を渡していますが、変数を渡したい:
void render(string action, HTTPServerResponse res) {
res.render!(action);
}
しかし、次のエラーが表示されます。
Error: variable action cannot be read at compile time
を呼び出しているすべての場所でrender、文字列をハードコーディングしました。
render("foo.dt");
しかし、それはコンパイラを満足させません。どうすればこれを機能させることができますか?