Новые Grid таблицы

InstantCMS 2.X
#1 5 декабря 2023 в 11:15

Привет. При формировании грид таблицы по новому варианту, как внести именения в массив данных? То есть, на примере этого. В старом варианте, я бы сделал так

  1. ...
  2. $items = $this->get('my_table', function($item, $model){
  3.  
  4. $item['date'] = date('d.m.Y', strtotime($item['date']));
  5.  
  6. return $item;
  7.  
  8. });
  9. ...
  10.  
  11. $this->cms_template->renderGridRowsJSON($grid, $items,...);

А как такое в новом сделать?

#2 5 декабря 2023 в 11:34
  1. ...
  2. $this->item_callback = function ($item, $model){
  3.  
  4. $item['date'] = date('d.m.Y', strtotime($item['date']));
  5.  
  6. return $item;
  7.  
  8. };
  9. ...
#3 5 декабря 2023 в 11:48

Ок, спасибо. Сейчас попробую.

Добавлено спустя 3 минуты

Ок, спасибо. Сейчас попробую.

Lora

Всё нормуль. Ещё раз спасибо)

#4 5 декабря 2023 в 12:03

Есть ещё

  1. $this->items_callback = function ($items){
  2. $items - массив всех записей
  3. }
  4.  
  5. $this->list_callback = function ($model){
  6. $model - модель
  7. }
 
#5 5 декабря 2023 в 12:25

Ну и если совсем правильно, то такие правки лучше делать с помощью handler docs.instantcms.ru/dev/controllers/backend/grids

#6 5 декабря 2023 в 13:45

Ну и если совсем правильно, то такие правки лучше делать с помощью handler

Zau4man

Это только в том случае, если не используются дополнительные данные при обработке, типа такого

  1. $this->item_callback = function ($item) use ($user_id, $permissions) { ....
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.