Страница 1 из 1

Вывод значений на странице объявления

СообщениеДобавлено: 23 сен 2016, 22:00
REDAnton
Добрый день.
Уважаемые разработчики, как вывести значений из таблицы описания на странице с объявлением (view.php)?
Речь идет про блок, где выводятся все кастомные поля, в том числе и тип помещения и категория.
Конкретно интересует какой конструкцией вывести тип недвижимости.
Пример: адрес помещения выводим через "echo $model->getStrByLang('address')".

Спасибо!

Re: Вывод значений на странице объявления

СообщениеДобавлено: 24 сен 2016, 12:27
andipas
Тип недвижимости можно вывести так

Код: Выделить всё
echo $model->objType->getStrByLang('name'); 

Re: Вывод значений на странице объявления

СообщениеДобавлено: 24 сен 2016, 13:32
REDAnton
Благодарю, то что нужно.
Еще вопрос, если позволите:
Как в блоке описания объявления фильтровать выводимые значения?
Там выводятся все заполненные значения + постоянные поля (тип, адрес, цена и тд).
Например, убрать вывод цены. Мы её выводим в отдельном блоке, хотим убрать дублирование.

Спасибо большое!

Re: Вывод значений на странице объявления

СообщениеДобавлено: 25 сен 2016, 17:08
Xpycm
Здравствуйте.

В файле themes\atlas\views\modules\apartments\views\_tab_general.php
код:
Код: Выделить всё
$rows = HFormEditor::getGeneralFields();

записывает в переменную $rows поля, которые должны отображаться во вкладке "Основное"

В файле themes\atlas\views\modules\apartments\views\_tab_addition.php
список полей для вывода во вкладке "Дополнительно" находятся в переменной $additionFields

Касательно вкладки "Основное":
До вызова метода HFormEditor::renderViewRows($rows, $data, $isPrintable); вы можете пройтись с помощью foreach по массиву $rows и сделать unset ненужных для вывода элементов

На примере.
Было:
Код: Выделить всё
$rows = HFormEditor::getGeneralFields();
HFormEditor::renderViewRows($rows, $data, $isPrintable); 


должно получиться что-то вроде:
Код: Выделить всё

$rows 
= HFormEditor::getGeneralFields();
foreach ($rows as $key => $row) {
    if ($row->field == 'price') {
        unset($rows[$key]);
    }
}
HFormEditor::renderViewRows($rows, $data, $isPrintable); 


Для вкладки "Дополнительно" логика та же самая, за исключением того, что перебирать необходимо массив $additionFields

Re: Вывод значений на странице объявления

СообщениеДобавлено: 26 сен 2016, 21:29
REDAnton
Спасибо большое!
Цену удалось убрать, тип недвижимости нет, не знаем какое имя в field подставлять в конструкцию if... :)

Re: Вывод значений на странице объявления

СообщениеДобавлено: 27 сен 2016, 08:42
Xpycm
Название поля можете посмотреть в таблице {{formdesigner}} в поле field
Тип недвижимости имеет ID = 18 и field == 'obj_type_id'