Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
virusav 05.03.2022 15:29
Варианты для 2 свойств:@GET_property1[] $result[ $.name[p_1] $.value[abc] ] @GET_property2[] $result[ $.name[p_2] $.value[sddsd] ]2. Выдаем значение свойств в одном методе (выглядит топорно, но обработка в одном месте):
@GET_DEFAULT[sField] ^switch[$sField]{ ^case[property1]{ $self.[$sField][ $.name[p_1] $.value[abc] ] } ^case[property2]{ $self.[$sField][ $.name[p_2] $.value[sddsd] ] } } $result[$self.[$sField]]3. Заводим конфиг свойств и при обращении к любому производим первоначальное заполнение всех свойств (удобно тем, что можно задать один конфиг, с которым удобнее работать):
@getData[] $result[ $.property1[ $.name[p_1] $.value[abc] ] $.property2[ $.name[p_2] $.value[sddsd] ] ] @GET_DEFAULT[sField][hData;key;value] ^if(!def $self.[$sField]){ $hData[^self.getData[]] ^hData.foreach[key;value]{ $self.[$key][$value] } } $result[$self.[$sField]]Суть всех данных извращений в том, чтобы обращаться к свойствам без создания экземпляра класса: $class:property1.name