Что такое setMethod() и populateModel() в фреймворке coldbox

Что такое setMethod(parameter) и populateModel(string) в данном коде фреймворка ColdBox?

function addUser(event,rc,prc)          
{
    LOCAL.userBean = populateModel("userBean").init(5,prc.siteid,event.getValue('userid',0));
    rc.user = securityService.getUser(LOCAL.userBean);
    LOCAL.userBean.setMethod(3);
    rc.genderList=globalsService.getGlobals(LOCAL.userBean); 
    LOCAL.userBean.setMethod(7);
    rc.stateList=globalsService.getGlobals(LOCAL.userBean);
    event.setLayout("Window");
    event.setView("purchase/addUser");
}

person Basit Ali    schedule 23.06.2019    source источник
comment
coldbox.ortusbooks.com/the-basics/ обработчики событий/   -  person Shawn    schedule 24.06.2019
comment
coldbox.ortusbooks.com ‹‹‹ Неплохой источник информации о ColdBox.   -  person Shawn    schedule 24.06.2019


Ответы (1)


SetMethod() будет чем-то специфичным для самого UserBean. Этого нет в ColdBox.

Хотя PopulateModel может делать гораздо больше, обычно это способ заполнения модели путем передачи структуры. Модель заполнения будет перебирать ключи в структуре, и если в модели есть соответствующее свойство, она установит его.

Например, model.setUsername( rc.username ), если есть ключ с именем username. PopulateModel предполагает, что вы отправляете область rc, но обычно лучше проверить и добавить ограничения, чтобы кто-то не мог передать пароль через URL-адрес и установить его, например, для пользователя.

Ссылки Шона хорошие, надеюсь, что все поможет.

person Gavin Pickin    schedule 22.01.2020