Опубликовано: 13 апреля 20196 г Здравствуйте! Не могу понять, в каком момент я ошибаюсь. Вот такой код в шаблоне categoryTable: {{foreach $groups as $group}} {{$group_find = \IPS\Db::i()->select( '*', 'cms_custom_database_6', array( 'field_32=?', $group->id ) )->first();}} {$group_find->url('edit')} {{endforeach}} Я подглядел как работает шаблон recordRow и там вроде тоже массив rows в row. Получаю ошибку: Call to a member function url() on array
Опубликовано: 13 апреля 20196 г $group_find в вашем случае просто результирующий массив данных из бд. А row там явно не массив, а объект. Если хотите использовать этот метод нужно создать объект класса которым является row, или просто вручную составить ссылку на основе ваших данных, к примеру ...do=edit&id={$group_find["id"]}
Опубликовано: 13 апреля 20196 г Автор Блин, хотел сделать по красоте все, но до ООП наскоком взять не получилось еще. Буду формировать ссылку по старинке. Спасибо!
Опубликовано: 13 апреля 20196 г {{$row = \IPS\Db::i()->select( '*', 'cms_custom_database_6', array( 'field_32=?', $group->id ) )->first();}} {{$item = \IPS\cms\Records6::constructFromData( $row );}} {$item->url('edit')} Только помните, что метод ->first() выбрасывает исключение если результат вернул ноль строк. Если его не перехватить, выполнение скрипта закончится с ошибкой.
Опубликовано: 14 апреля 20196 г Автор Работает идеально! Большое спасибо! А вот про конструкции вроде \IPS\cms\Records6::constructFromData написано в оф. документации для девелоперов?
Опубликовано: 14 апреля 20196 г Что-то там есть. Называется это Active Recordshttps://invisioncommunity.com/developers/docs/fundamentals/active-records-r22/
Здравствуйте!
Не могу понять, в каком момент я ошибаюсь. Вот такой код в шаблоне categoryTable:
{{foreach $groups as $group}} {{$group_find = \IPS\Db::i()->select( '*', 'cms_custom_database_6', array( 'field_32=?', $group->id ) )->first();}} {$group_find->url('edit')} {{endforeach}}Я подглядел как работает шаблон recordRow и там вроде тоже массив rows в row.
Получаю ошибку:
Call to a member function url() on array