vinegredz
-
Постов
15 -
Зарегистрирован
-
Посещение
Тип контента
Форумы
Склад
Документация IPS4
Новости
Приложения
Лаборатория
Багтрекер
Разработка
Интервью
Профили
Файлы
Блоги
Календарь
Идеи
Сообщения, опубликованные vinegredz
-
-
14 часов назад, invisionbyte сказал:
Вместо $row->url() можно использовать \IPS\Request::i()
А в чем его отличие и преимущества? Быстрее? Более гибкий? Другой источник данных? Более универсальный?
-
Я не знаю заранее где может понадобиться вывести, поэтому в поисках универсального решения.
Сделал такую конструкцию, которая работает:
{{$rows = \IPS\Db::i()->select( '*', 'cms_custom_database_12' )->first();}} {{$row = \IPS\cms\Records12::constructFromData( $rows );}}
Но не кажется, что это какой-то костыль и работает медленно.
-
Здравствуйте.
Юзаю такую конструкцию:
{{$table = new \IPS\Helpers\Table\Content('IPS\cms\Records12', $row->url(), $where);}} {{$table->tableTemplate = array(\IPS\cms\Theme::i()->getTemplate('records_listing', 'cms', 'database'), 'categoryTable');}} {{$table->rowsTemplate = array(\IPS\cms\Theme::i()->getTemplate('records_listing', 'cms', 'database'), 'recordRow');}} {{$table->paginationKey = 'fpage';}} {$table|raw}
Проблема в том, что она работает только в тех шаблонах, в которые передается переменная $row, потому что есть это $row->url().
Не пойму, как мне самому создать корректно эту переменную, управляя тем, какие данные из таблицы в нее попадают.
Достаточно одного точно работающие примера.
-
Может быть известно, где еще кроме //system/Helpers/Form/item.php прописана логика работу полей такого типа?
-
Да, ошибка в том, что по какой-то причине в таблице для поля primary_id_field было отключено auto_increment. Включил вручную, сделала колонку основной и все заработало. Спасибо!
-
Да, верно. Пусть их будет хоть 10, все будут с primary_id_field = 0.
Ковыряю сейчас таблицу.
-
Допустим, но почему может при каждом запросе API создаваться запись с primary_id_field = 0. Счетчик просто не считает дальше.
Я так же проверил, чтобы нумерация по этой колонке в базе была корректной и там действительно отсчет идет от 1 (как и в других таблицах).
Есть идеи куда капать?
-
Например, я добавляю записи в поле relate в таком порядке 5,2,3,6,7 (каждое число, это primary_id_field), а после сохранения записи (если ранее поле было пустым), если зайти в базу данных, то порядок будет случайным образом иной (например, 6,7,5,3,2). Вот в этом и проблема, потому что мне важно сохранять порядок записей.
-
Здравствуйте.
Есть в базах данных поля типа Relate (связь с базой данных), где можно начать вписывать titile записи и будет срабатывать автозаполнение.
Заметил, что после сохранения/создания записи порядок добавленных в такие поля записей нарушается.
Посмотрел, что в //system/Helpers/Form/item.php и не нашел там смешивания среди параметров.
protected $defaultOptions = array( 'class' => NULL, 'permissionCheck' => 'read', 'maxItems' => NULL, 'orderResults' => 'etc', 'itemTemplate' => NULL, 'containerIds' => array(), 'minAjaxLength' => 3, 'where' => array() );
Подскажите, пожалуйста, в чем проблема и как изменить поведение полей такого типа по умолчанию?
-
Здравствуйте.
Отправляю POST запрос на создание новой записи в базе данных. URL такого вида:
https://site.com/api/cms/records/12?
В ответ приходит такое:
{ "id": null, "title": "photo", "category": { "id": 24, "name": "Photos", "url": "https:\/\/site.com\/tools\/photos\/", "class": "IPS\\cms\\Categories12", "permissions": { "perm_id": 268, "perm_view": "4,6,2,3", "perm_2": "4,6,2,3", "perm_3": "4,6,3", "perm_4": "4,6,3", "perm_5": "", "perm_6": "", "perm_7": "" } }, }
Как видите в ответе все корректно, кроме поля id, которое со значение Null.
Когда смотрю напрямую в базу данных, то создается запись с primary_id_field = 0.
Система обновлена до последней версии.
Подскажите, пожалуйста, где и как присваивается id так как оно (вроде) не автоинкрементируемое.
-
Только что, Павел сказал:
Так в приведённом мной примере можно управлять любыми данными актёров. Не понимаю что ещё нужно) Скажите проще - вывести какое-то инфо в просмотре фильма... или ещё как-нибудь.
Скажите, пожалуйста, куда конкретно подставлять этот шаблон?
Если использовать его для того чтобы указать формат отображения (в настройках поля). То страница вылетает в ошибкой. Если указать его просто в коде шаблона record, то ничего не работает.
-
К сожалению не то.
Попробую зайти с другой стороны и переформулировать вопрос.
Как на странице фильма в шаблоне record отобразить список актеров, которые участвуют в фильме, при этом не меняя глобальной шаблон для databaseRelationship, а управлять карточкой актера прямо в шаблоне record для базы данных фильмов. То есть я хочу иметь возможность выводить на страницу record только отдельные поля из карточки актера (не меняя при этом глобальный шаблон databaseRelationship).
Спасибо за внимание!
-
Спасибо за ответ. Об этой функции знаю. Проблема как управлять шаблоном вывода данных из связанной записи.
Я знаю как изменить глобально шаблон вывода, но не пойму как управлять шаблонов вывода раздельно для каждого поля и как вывести их в шаблон.
Посмотрите, пожалуйста, пример верстки.
-
Здравствуйте!
Есть база фильмов (классическая для IP Content).
В этой базе есть поле "Актеры фильма" типа "Связь с базой данных".Есть база актеров (классическая для IP Content).
В этой базе есть поле "Фильмы, в которым участвовал" типа "Связь с базой данных".Задача которую нужно решить:
В шаблоне record для базы данных с фильмами вывести информацию об актерах. Структура верстки примерно такая:<div class='MovieRecord'> <h1>{$record->_title}</h1> <!--Тут хочу вывести Grid с актерами, которые учавствуют в фильме--> <ul class='ipsGrid'> <li class='ipsGrid_span4'> <h2>{$actor}</h2> <span>{$actorage}</span> </li> </ul> </div>
По сути, я хочу понять как мне подставлять данные из связанной записи на странице.
[Коммерция] Модуль оплаты WalletOne
в Приложения и плагины
Опубликовано
Здравствуйте. Спасибо за плагин. Версии 4.4.9+ не поддерживается?