У меня есть следующий код 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
не имеет правильного значения?).Может кто-нибудь сказать мне, почему это происходит?Это все равно не логично для меня.