Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
vinegredz

Как сформировать ссылку на редактирование записи?

Рекомендованные сообщения

Здравствуйте!

 

Не могу понять, в каком момент я ошибаюсь. Вот такой код в шаблоне 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

Поделиться сообщением


Ссылка на сообщение

$group_find в вашем случае просто результирующий массив данных из бд. А row там явно не массив, а объект. Если хотите использовать этот метод нужно создать объект класса которым является row, или просто вручную составить ссылку на основе ваших данных, к примеру ...do=edit&id={$group_find["id"]}

Поделиться сообщением


Ссылка на сообщение

Блин, хотел сделать по красоте все, но до ООП наскоком взять не получилось еще. Буду формировать ссылку по старинке. Спасибо!

Поделиться сообщением


Ссылка на сообщение

{{$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() выбрасывает исключение если результат вернул ноль строк. Если его не перехватить, выполнение скрипта закончится с ошибкой.

Поделиться сообщением


Ссылка на сообщение

Работает идеально! Большое спасибо!

 

А вот про конструкции вроде \IPS\cms\Records6::constructFromData написано в оф. документации для девелоперов?

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...