我有以下CppCMS MVC代码:
void routing_controller()
{
this->route.username = "My name";
//this->route.debug_string = to_string(num_active); // won't work here
if(request().request_method() == "POST")
{
this->route.info.load(context());
if(this->route.info.validate())
{
if(this->route.info.num[0].value() == true)
{
this->num_active = 0;
}
else if(this->route.info.num[1].value() == true)
{
this->num_active = 1;
}
}
this->route.debug_string = to_string(num_active); // only works here
}
render("route", this->route);
}
单击页面上的两个按钮会影响变量route.info.num[0/1].value()
。我使用它们来更改全局变量num_active
。此变量将转换为字符串并显示在页面(视图)上。
但是,仅当我有这行时,它才有效:
this->route.debug_string = to_string(num_active);
放在下面。如果将其放在上面,它将无法正确呈现(或num_active
的值不正确?)。有人可以告诉我为什么会这样吗?对我来说这是不合逻辑的。