Запрос в аяксе

InstantCMS 2.X
#1 29 апреля 2021 в 10:52
Привет. Компонент. backend/actions/file.php. Всё лишнее опустив:
  1.  
  2. class actionTestFile extends cmsAction {
  3. public function run($ajax = false) {
  4.  
  5. $grid = $this->loadDataGrid('file');
  6. if ($ajax){
  7. $cats = $this->model->getCatsTree('test_cats',false); //тут массив с категориями и под-категориями. Сортировка по ns_left
  8. if (is_array($cats)){
  9. foreach($cats as $item){
  10.  
  11. $tree_nodes[] = array(...); // тут готовится массив для $grid
  12.  
  13. }
  14. }
  15. return $this->cms_template->renderGridRowsJSON($grid, $tree_nodes);
  16. }
  17.  
  18. }
  19. }
Всё работает, как и положено. Но понадобилось до передачи в $grid вносить изменения в одно из полей под-категорий. И вот тут возникла загвоздка. При получении полей под-категорий в цикле, возвращается только первая под-категория.
  1. foreach($cats as $item){
  2. $parent = $this->model->getItemByField('test_cats','parent_id',$item['id']);
  3. }
Хотелось бы понять почему? Ведь по идеи, это цикл и при каждой итерации $item['id'] меняется. И если под-категорий три, то и массивов должно быть три. Задачу решил другим запросом, но вопрос тем не менее остался.
#2 29 апреля 2021 в 11:23

Хотелось бы понять почему?

Lora
Потому что getItemByField, а не get
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.