Toggle navigation

Представления - Odoo 8.0

Общая структура

Объекты представлений являют собой набор полей в специальной модели данных, они являются необязательными, если явно не указано иное.

name (обязательно)

полезно только в качестве мнемоники/человекочитаемого описания представления для обращения к конкретному представлению среди множества подобных

model

модель данных, связанная с представлением, если такое возможно (это не относится к представлениям QWeb)

priority

клиентские программы могут запрашивать представления с помощью id или (model, type). Для последнего будут найдены все виды для правильного типа и модели данных, и будет возвращен номер с самым низким номером priority (это и будет «представление по умолчанию»).

priority также определяет порядок применения во время: ref:[UNKNOWN NODE title_reference]

arch

описание шаблона представления

groups_id

Many2many поле в котором указываются группы которым разрешено просмотр/использование текущего представления

inherit_id

идентификатор родительского представления, см Наследование., по умолчанию не используется

mode

механизм наследования, см. Наследование.. Если inherit_id снят, mode может быть только primary. Если inherit_id установлен, то по умолчанию будет назначен механизм extension, но может быть явно установлен в primary

application

функция веб-сайта, определяющая переключение представлений. По умолчанию представления всегда применяются

Наследование.

Соответствие представления

  • если представление запрашивается (model, type), то идет сопоставление с правильной моделью и типом, mode = primary с самым низким приоритетом

  • когда представление запрашивается по id, если его режим не является primary, то сопоставляется его ближайший родитель с режимом primary

Показать разрешение

Разрешение генерирует окончательный `` arch`` для запрошенного / согласованного `` первичного`` вида:

  1. Если представление имеет родительский элемент, родительский элемент полностью разрешен, то применяются наследующие спецификации текущего представления

  2. Если у представления нет родителя, его `` арка`` используется как есть

  3. Просматриваются дочерние элементы текущего представления с режимом `` extension``, и их спецификации наследования применяются к глубине (применяется дочерний вид, затем его потомки, а затем его братья и сестры)

Результатом применения представлений дочерних элементов является окончательная `` арка``

Параметры наследования

Существует три типа спецификаций наследования:

  • Элемент `` xpath`` с атрибутом `` expr``. `` Expr`` - выражение XPath [#hasclass] _, примененное к текущей `` arch``, первый узел, который он находит, является совпадением

  • Элемент `` field`` с атрибутом `` name``, соответствует первому `` полюсу`` с тем же `` name``

  • Любой другой элемент, первый элемент с тем же именем и идентичными атрибутами (игнорирование `` position``) сопоставляется

Спецификация наследования может иметь необязательный атрибут `` position``, определяющий, как должен быть изменен согласованный узел:

`` Внутри`` (по умолчанию)

Содержимое спецификации наследования добавляется к согласованному узлу

replace

Содержимое спецификации наследования заменяет согласованный узел

after

Содержимое спецификации наследования добавляется к родительскому элементу сопоставленного узла после того, как соответствующий узел

before

Содержимое спецификации наследования добавляется к родительскому элементу сопоставленного узла, перед согласованным узлом

Атрибуты:

В спецификации наследования должны быть элементы `` атрибута`` с атрибутом `` name`` и необязательным телом:

  • Если у элемента `` attribute`` есть тело, на соответствующем узле создается новый атрибут, названный по имени его `` name``, с текстом элемента `` attribute`` как значением

  • Если у элемента `` attribute`` нет тела, атрибут, названный после его `` name``, удаляется из согласованного узла. Если такой атрибут отсутствует, возникает ошибка

Спецификации представления применяются последовательно.

Списки

Корневым элементом представлений списков является `` <дерево> `` [#treehistory] _. Корень списка может иметь следующие атрибуты:

Редактируемое

По умолчанию выбор строки представления списка открывает соответствующее: ref: [UNKNOWN NODE title_reference]. Атрибуты `` editable`` делают просмотр списка себя редактируемым на месте.

Допустимыми значениями являются `` top`` и `` bottom``, в результате чего * новые * записи появляются соответственно в верхней или нижней части списка.

Архитектура для inline: ref: [UNKNOWN NODE title_reference] выводится из представления списка. Большинство атрибутов, действительных в полях и кнопках ref: [UNKNOWN NODE title_reference], таким образом, принимаются представлениями списков, хотя они могут и не иметь никакого значения, если представление списка не редактируется

По умолчанию Заказать

Переопределяет порядок представления, заменяя порядок по умолчанию для модели. Значение представляет собой список полей, разделенных запятой, с пометкой `` desc`` для сортировки в обратном порядке:

<tree default_order="sequence,name desc">
Цвета:

Позволяет изменить цвет текста строки на основе атрибутов соответствующей записи.

Определяется как отображение цветов в выражения Python. Значения имеют вид:: samp: [UNKNOWN NODE title_reference]. Для каждой записи пары проверяются по порядку, выражение вычисляется для записи, и если `` true``, соответствующий цвет применяется к строке. Если цвет не соответствует, используется цвет текста по умолчанию (черный).

  • `` Color`` может быть любым допустимым [UNKNOWN NODE problematic]color unit '.

  • `` Expr`` должно быть выражением Python, оцененным с атрибутами текущей записи как значения контекста. Другими значениями контекста являются `` uid`` (id текущего пользователя) и `` current_date`` (текущая дата в виде строки в форме `` yyyy-MM-dd``)

11 Шрифты 225

Позволяет изменить стиль шрифта строки на основе атрибутов соответствующей записи.

Формат такой же, как для `` color``, но `` цвет`` каждой пары заменяется на `` bold``, `` italic`` или `` underline``, выражение, вычисляемое как `` True`` применит соответствующий стиль к тексту строки. В отличие от `` colors``, несколько пар могут соответствовать каждой записи

`` Create``, `` edit``, `` delete``

Позволяет * dis * изменять соответствующее действие в представлении, устанавливая соответствующий атрибут на `` false``

`` On_write``

Имеет смысл только в списке `` editable``. Должно быть именем метода в модели списка. Метод будет вызываться с `` id`` записи после создания или редактирования этой записи (в базе данных).

Метод должен возвращать список идентификаторов других записей для загрузки или обновления.

Стринг

Альтернативный переводимый ярлык для представления

Не рекомендуется, начиная с версии 8.0: Больше не отображается

Возможными дочерними элементами представления списка являются:

Кнопка

Отображает кнопку в ячейке списка

Знак

Значок для отображения кнопки

Стринг
  • Если «значок» отсутствует, текст кнопки

  • Если есть текст `` icon``, `` alt`` для значка

type

Тип кнопки, указывает, как это нажатие влияет на Odoo:

`` Workflow`` (по умолчанию)

Посылает сигнал в рабочий процесс. «Имя» кнопки - это сигнал рабочего процесса, запись строки передается в качестве аргумента в сигнал

1.1 Цель

Вызовите метод в модели списка. «Имя» кнопки - это метод, который вызывается с идентификатором записи текущей строки и текущим контекстом.

action

Загрузите выполнение `` ir.actions``, `` имя`` кнопки - это идентификатор базы данных действия. Контекст расширяется с помощью модели списка (как `` active_model``), записи текущей строки (`` active_id``) и всех записей, загружаемых в данный момент в списке (`` active_ids``, может быть просто подмножеством Записи базы данных, соответствующие текущему поиску)

name

См. `` Тип``

args

См. `` Тип``

`` attrs``

Динамические атрибуты, основанные на значениях записи.

Отображение атрибутов в доменах, доменах оценивается в контексте записи текущей строки, если «Истина», соответствующий атрибут задан в ячейке.

Возможные атрибуты `` невидимые`` (скрывает кнопку) и `` readonly`` (отключает кнопку, но все равно показывает ее)

Области

Стенография для `` невидимого`` `` attrs``: список состояний, разделенных запятой, требует, чтобы модель имела поле `` state`` и что она используется в представлении.

Делает кнопку `` невидимой``, если запись * не * в одном из перечисленных состояний

context

Сливается с контекстом представления при выполнении вызова Odoo на кнопке

подтвердить

Подтверждающее сообщение для отображения (и для пользователя, чтобы принять) перед выполнением вызова Odoo на кнопке

field

Определяет столбец, в котором соответствующее поле должно отображаться для каждой записи. Может использовать следующие атрибуты:

name

Имя поля для отображения в текущей модели. Данное имя может использоваться только один раз для просмотра

Стринг

Заголовок столбца поля (по умолчанию используется `` строка`` поля модели)

Невидимый

Выбирает и сохраняет поле, но не отображает столбец в таблице. Необходимо для полей, которые не должны отображаться, но используются, например, `` @ colors``

groups

Перечислены группы, которые должны быть в состоянии видеть поле

Виджет

Альтернативные представления для отображения поля. Возможные значения списка:

Индикатор выполнения

Отображает поля `` float`` в качестве индикатора выполнения.

`` Many2onebutton``

Заменяет значение поля m2o галочкой, если поле заполнено, и крестик, если это не так

рукоятка

Для полей `` sequence`` вместо отображения значения поля просто отображается значок dra & drop

`` Сумма``, `` avg``

Отображает соответствующий агрегат в нижней части столбца. Агрегация вычисляется только по * отображаемым в настоящее время * записям. Операция агрегации должна соответствовать `` group_operator` соответствующего поля

`` attrs``

Динамические атрибуты, основанные на значениях записи. Только воздействует на текущее поле, так, например, `` невидимый`` скроет поле, но оставит видимым одно и то же поле других записей, он не будет прятать сам столбец

Формы

Представления формы используются для отображения данных из одной записи. Их корневой элемент - `` <форма> [UNKNOWN NODE problematic]. Они состоят из обычного HTML с дополнительными структурными и семантическими компонентами.

Конструкционные элементы

Структурные компоненты обеспечивают структуру или «визуальные» функции с небольшой логикой. Они используются как элементы или наборы элементов в представлениях форм.

Блокнот

Определяет секцию с вкладками. Каждая вкладка определяется через дочерний элемент `` page``. Страницы могут иметь следующие атрибуты:

`` Строка`` (обязательно)

Заголовок вкладки

`` Accesskey``

HTML accesskey

`` attrs``

Стандартные динамические атрибуты, основанные на значениях записи

Группа:

Используется для определения макетов колонок в формах. По умолчанию группы определяют 2 столбца, а большинство прямых потомков групп занимают один столбец. Прямые дочерние элементы `` поля`` по умолчанию отображают метку, а метка и само поле имеют colspan по 1 каждому.

Количество столбцов в `` group`` можно настроить с помощью атрибута `` col``, количество столбцов, взятых элементом, можно настроить с помощью `` colspan``.

Дети выложены горизонтально (пытается заполнить следующий столбец перед сменой строки).

Группы могут иметь атрибут `` строка``, который отображается как название группы

новая строка

Полезен только внутри элементов `` group``, рано заканчивает текущую строку и сразу переключается на новую строку (без предварительного заполнения любого оставшегося столбца)

--- SEPARATOR ---

Малый горизонтальный интервал с атрибутом `` строка`` ведет себя как заголовок раздела

ЛИСТ

Может использоваться в качестве прямого потомка для `` формы`` для более узкой и гибкой формы макета

Заголовок

В сочетании с `` sheet``, обеспечивает положение полной ширины над листом, как правило, используется для отображения кнопок рабочего процесса и виджетов состояния

Семантические компоненты

Семантические компоненты связывают и позволяют взаимодействовать с системой Odoo. Доступными семантическими компонентами являются:

Кнопка

Вызов в систему Odoo, аналогично: ref: [UNKNOWN NODE title_reference]

field

Визуализирует (и позволяет, возможно, выпуск) одного поля текущей записи. Возможные атрибуты:

name (обязательно)

Имя отображаемого поля

Виджет

Поля имеют рендеринг по умолчанию в зависимости от их типа (например: class: [UNKNOWN NODE title_reference],: class:` ~ openerp.fields.Many2one`). Атрибуты `` widget`` позволяют использовать другой метод визуализации и контекст.

ОПЦИИ

Параметр конфигурации объекта JSON для виджета поля (включая виджеты по умолчанию)

«Категория»

Класс HTML для установки на сгенерированный элемент, общие классы полей:

`` Oe_inline``

Предотвратить обычный разрыв строки после полей

`` Oe_left``, `` oe_right``

Floats поле в соответствующее направление

`` Oe_read_only``, `` oe_edit_only``

Только отображает поле в соответствующем режиме формы

`` Oe_no_button``

Позволяет избежать отображения кнопки навигации в классе: [UNKNOWN NODE title_reference]

`` Oe_avatar``

Для полей изображения, отображает изображения как аватары (квадрат, максимальный размер 90x90, некоторые изображения)

groups

Только отображает поле для определенных пользователей

`` On_change``

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

Не рекомендуется, начиная с версии 8.0: Использование: func: [UNKNOWN NODE title_reference] на модели

`` attrs``

Динамические мета-параметры, основанные на значениях записи

домен;

Только для реляционных полей, фильтры, применяемые при отображении существующих записей для выбора

context

Только для реляционных полей, контекст для передачи при получении возможных значений

Только для чтения

Отображать поле как в режиме только для чтения, так и в редакторе, но никогда не редактируйте его

Необходимое

Генерирует ошибку и предотвращает сохранение записи, если поле не имеет значения

`` Nolabel``

Не отображать метку поля автоматически, имеет смысл только в том случае, если поле является прямым потомком элемента `` group``

Подпись

Help сообщение для отображения в * empty * полях. Может заменять метки полей в сложных формах. * Не должно * быть примером данных, так как пользователи могут путать текст заполнитель с заполненными полями

mode

For: class: [UNKNOWN NODE title_reference], режим отображения (тип представления) для использования для связанных записей поля. Одно из «дерева», «форма», «канбан» или «граф». По умолчанию используется `` tree`` (отображение списка)

помощь

Подсказка, отображаемая для пользователей при наведении курсора на поле или его метку

filename

Для двоичных полей, имя связанного поля, предоставляющего имя файла

Пароль:

Указывает, что поле a: class: [UNKNOWN NODE title_reference] хранит пароль и что его данные не должны отображаться

Рекомендации для бизнес-представлений

Представление для бизнеса предназначено для обычных пользователей, а не для продвинутых пользователей. Примеры: возможности, продукты, партнеры, задачи, проекты и т. Д.

В общем, бизнес-представление состоит из

  1. Верхняя строка состояния (с техническим или бизнес-потоком),

  2. Лист в середине (сама форма),

  3. Нижняя часть с историей и комментариями.

Технически новые представления форм структурированы следующим образом в XML

<form>
    <header> ... content of the status bar  ... </header>
    <sheet>  ... content of the sheet       ... </sheet>
    <div class="oe_chatter"> ... content of the bottom part ... </div>
</form>

Строка состояния

Цель строки состояния - показать состояние текущей записи и кнопок действий.

Кнопки

Порядок кнопок соответствует бизнес-потоку. Например, в заказе на продажу логические шаги:

  1. Отправить предложение

  2. Подтверждение предложения

  3. Создать окончательный счет-фактуру

  4. Отправить товар

Выделенные кнопки (по умолчанию красный) подчеркивают следующий логический шаг, чтобы помочь пользователю. Обычно это первая активная кнопка. С другой стороны: guilabel: кнопки [UNKNOWN NODE title_reference] * должны * оставаться серыми (нормальными). Например, в Invoice кнопка: guilabel: [UNKNOWN NODE title_reference] никогда не должна быть красной.

Технически кнопки выделяются добавлением класса "oe_highlight":

<button class="oe_highlight" name="..." type="..." states="..."/>
Статус

Использует виджет `` statusbar`` и показывает текущее состояние красным цветом. Состояния, общие для всех потоков (например, заказ на продажу начинается как котировка, затем мы отправляем его, затем он становится полным заказом на продажу, и, наконец, он выполняется) должны быть видимыми всегда, но исключениями или состояниями в зависимости от конкретного подкаталога -flow должен быть видимым только при текущем.

Состояния отображаются в соответствии с порядком, используемым в поле (список в поле выбора и т. Д.). Состояния, которые всегда видимы, задаются атрибутом `` statusbar_visible``.

<field name="state" widget="statusbar"
    statusbar_visible="draft,sent,progress,invoiced,done" />

Лист

Все бизнес-представления должны выглядеть как отпечатанные листы:

  1. Элементы внутри `` <form> `` или `` <page> `` не определяют группы, элементы внутри них выложены в соответствии с нормальными правилами HTML. Их содержимое может быть сгруппировано в явном виде, используя элементы `` <group> `` или обычные `` <div> [UNKNOWN NODE problematic].

  2. По умолчанию элемент <группа> определяет два столбца внутри, если не используется атрибут `` col = "n". Столбцы имеют одинаковую ширину (1 / n-й ширины группы). Используйте элемент ``<group> для создания столбца полей.

  3. Чтобы присвоить заголовок разделу, добавьте атрибут `` string`` в элемент `` <group> ``

    <group string="Time-sensitive operations">
    

    Это заменяет прежнее использование `` <separator string = "XXX" /> [UNKNOWN NODE problematic].

  4. Элемент `` <field> `` не создает метку, за исключением прямых потомков элемента <group> "[# обратная совместимость] _. Используйте: samp: [UNKNOWN NODE problematic]<label for = " {field_name}> [UNKNOWN NODE problematic]для создания метки поля.

Заголовки листов

На некоторых листах есть заголовки с одним или несколькими полями, а метки этих полей отображаются только в режиме редактирования.

Режим просмотра

РЕЖИМ РЕДАКТИРОВАНИЯ

Используйте HTML-текст, `` <div> , `` <h1> ``, `` <h2> `` ... для создания хороших заголовков и `` <label> `` с классом `` oe_edit_only, чтобы Только отображать метку поля в режиме редактирования. Класс `` oe_inline`` сделает поля inline (вместо блоков): содержимое, следующее за этим полем, будет отображаться в той же строке, а не в строке под ней. Форма выше приведена в следующем XML

<label for="name" class="oe_edit_only"/>
<h1><field name="name"/></h1>

<label for="planned_revenue" class="oe_edit_only"/>
<h2>
    <field name="planned_revenue" class="oe_inline"/>
    <field name="company_currency" class="oe_inline oe_edit_only"/> at
    <field name="probability" class="oe_inline"/> % success rate
</h2>
Кнопочный ящик

В форме могут отображаться многие релевантные действия или ссылки. Например, в форме Opportunity важное место в использовании CRM занимают действия «Расписание вызова» и «Расписание собрания». Вместо того, чтобы помещать их в меню «Дополнительно», поместите их прямо в лист в виде кнопок (вверху справа), чтобы сделать их более видимыми и более доступными.

Технически кнопки размещаются внутри `` <div> [UNKNOWN NODE problematic], чтобы сгруппировать их как блок с правой стороны листа.

<div class="oe_button_box oe_right">
    <button string="Schedule/Log Call" name="..." type="action"/>
    <button string="Schedule Meeting" name="action_makeMeeting" type="object"/>
</div>
Группы и заголовки

Теперь столбец полей создается с элементом `` <group> [UNKNOWN NODE problematic], с необязательным заголовком.

<group string="Payment Options">
    <field name="writeoff_amount"/>
    <field name="payment_option"/>
</group>

Рекомендуется использовать в форме два поля полей. Для этого просто поместите элементы `` <group> [UNKNOWN NODE problematic], содержащие поля внутри элемента верхнего уровня `` <group> [UNKNOWN NODE problematic].

Чтобы сделать: ref: [UNKNOWN NODE title_reference] [UNKNOWN NODE title_reference] [UNKNOWN NODE title_reference] в элементы` [UNKNOWN NODE title_reference] [UNKNOWN NODE problematic], поэтому новые поля могут быть легко добавлены справа место.

Особый случай: Промежуточные итоги

Некоторые классы определены для визуализации промежуточных итогов, например, в формах счетов:

<group class="oe_subtotal_footer">
    <field name="amount_untaxed"/>
    <field name="amount_tax"/>
    <field name="amount_total" class="oe_subtotal_footer_separator"/>
    <field name="residual" style="margin-top: 10px"/>
</group>
Заполнители и встроенные поля

Иногда полевые метки делают форму слишком сложной. Можно опустить полевые метки и вместо этого поместить поле в поле. Текст заполнителя отображается только в том случае, если поле пуст. Заполнитель должен указывать, что размещать внутри поля, он * не должен * быть примером, поскольку их часто путают с заполненными данными.

Можно также объединить поля вместе, сделав их «встроенными» внутри явного блока, например `` <div> [UNKNOWN NODE problematic]. Это позволяет группировать семантически связанные поля, как если бы они были едиными (составными) полями.

Следующий пример, взятый из формы * Leads [UNKNOWN NODE problematic], показывает как заполнители, так и встроенные поля (zip и city).

РЕЖИМ РЕДАКТИРОВАНИЯ

Режим просмотра

<group>
    <label for="street" string="Address"/>
    <div>
        <field name="street" placeholder="Street..."/>
        <field name="street2"/>
        <div>
            <field name="zip" class="oe_inline" placeholder="ZIP"/>
            <field name="city" class="oe_inline" placeholder="City"/>
        </div>
        <field name="state_id" placeholder="State"/>
        <field name="country_id" placeholder="Country"/>
    </div>
</group>
Изображения

Изображения, такие как аватары, должны отображаться справа от листа. Форма продукта выглядит так:

Форма выше содержит элемент <sheet>, который начинается с:

<field name="product_image" widget="image" class="oe_avatar oe_right"/>
Теги

Большинство: класс: поля [UNKNOWN NODE title_reference], как и категории, лучше отображаются в виде списка тегов. Используйте виджет `` many2many_tags`` для этого:

<field name="category_id" widget="many2many_tags"/>

Руководства по формам конфигурации

Примеры конфигурационных форм: этапы, тип отпуска и т. Д. Это касается всех пунктов меню Конфигурация каждого приложения (например, Sales / Configuration).

  1. Нет заголовка (потому что нет состояния, рабочего процесса, нет кнопки)

  2. Без листа

Форматы диалоговых форм

Пример: "Расписание звонков" из возможности.

  1. Избегать разделителей (заголовок уже находится в строке заголовка всплывающего окна, поэтому другой разделитель не имеет значения)

  2. Избегать кнопок отмены (пользователь обычно закрывает всплывающее окно, чтобы получить тот же эффект)

  3. Кнопки действий должны быть выделены (красным)

  4. При наличии текстовой области используйте метку-заполнитель вместо метки или разделителя

  5. Как и в регулярном представлении формы, поместите кнопки в элементе <header>

Рекомендации по настройке Wizards

Пример: Настройки / Конфигурация / Продажи.

  1. Всегда в строке (без всплывающих окон)

  2. Без листа

  3. Удерживайте кнопку отмены (пользователи не могут закрыть окно)

  4. Кнопка "Применить" должна быть красной

Графики

Графовое представление используется для визуализации агрегатов по нескольким записям или группам записей. Его корневым элементом является `` <graph> [UNKNOWN NODE problematic], который может принимать следующие атрибуты:

type

Один из `` bar`` (по умолчанию), `` pie``, `` line`` и `` pivot``, тип используемого графика (`` pivot` ') технически не является типом графа, он Отображает агрегацию как сводную таблицу)

Составные

Используется только для карт `` bar``. Если присутствует и установлен в `` True``, стеки баров внутри группы

Единственным допустимым элементом в графовом представлении является `` поле``, которое может иметь следующие атрибуты:

Имя (обязательно)

Имя поля для использования в виде графа. Если используется для группировки (а не объединения)

type

Указывает, должно ли поле использоваться как критерий группировки или как агрегированное значение внутри группы. Возможные значения:

`` Row`` (по умолчанию)

Групп по указанному полю. Все типы графиков поддерживают по крайней мере один уровень группировки, некоторые могут поддерживать больше. Для сводных таблиц каждая группа получает свою строку.

Колумбия

Используется только сводными таблицами, создает столбцы

Управления

Поле для группировки внутри группы

ИНТЕРВАЛ

По дате и дате и времени, группам по заданному интервалу (`` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` `` Фиксированное второе разрешение) или дата (фиксированное разрешение по дням).

Kanban

Вид канбана представляет собой визуализацию kanban board: он отображает записи как« карты », на полпути между: ref:` list view <reference / views / list> »и нередактируемым: ref:` form view <ссылка / вид / форма> [UNKNOWN NODE problematic]. Записи могут быть сгруппированы в столбцы для использования в визуализации рабочего процесса или в манипуляции (например, задачи или управление прогрессом) или негруппированы (используются просто для визуализации записей).

Корневым элементом представления Kanban является `` <kanban> [UNKNOWN NODE problematic], он может использовать следующие атрибуты:

`` default_group_by``

Следует ли группировать представление канбанов, если группировка не указана с помощью действия или текущего поиска. Должно быть именем поля, в которое нужно группировать, если никакая другая группировка не указана

По умолчанию Заказать

Порядок сортировки карточек, если пользователь еще не отсортировал записи (через просмотр списка)

«Категория»

Добавляет HTML-классы к корневому элементу HTML представления Kanban

`` Quick_create``

Следует ли создавать записи без переключения на вид. По умолчанию, `` quick_create`` включается, когда представление Kanban сгруппировано и отключено, если нет.

Установите `` true``, чтобы всегда включать его, и `` false``, чтобы всегда отключать его.

Возможными дочерними элементами элемента вида являются:

field

Объявляет поля для агрегирования или для использования в канбан * logic [UNKNOWN NODE problematic]. Если поле просто отображается в виде канбана, его не нужно предварительно объявлять.

Возможные атрибуты:

Имя (обязательно)

Имя поля для извлечения

`` Сумма``, `` avg``, `` min``, `` max``, [UNKNOWN NODE title_reference]

Отображает соответствующую агрегацию в верхней части столбца канбана, значением поля является метка агрегации (строка). Поддерживается только одна агрегированная операция для поля.

Шаблоны

Определяет список шаблонов: ref: [UNKNOWN NODE title_reference]. Определение карточек может быть разбито на несколько шаблонов для ясности, но представления канбанов * должны * определять хотя бы один корневой шаблон `` kanban-box``, который будет отображаться один раз для каждой записи.

Представление kanban использует в основном стандарт: ref: [UNKNOWN NODE title_reference] и предоставляет следующие контекстные переменные:

Приложение

Текущий: ref: [UNKNOWN NODE title_reference] instance

Виджет

Текущий: js: class: [UNKNOWN NODE title_reference], может быть использован для извлечения некоторой метаинформации. Эти методы также доступны непосредственно в контексте шаблона и не требуют доступа через `` widget``

record

Объект со всеми запрошенными полями в качестве его атрибутов. Каждое поле имеет два атрибута `` значение`` и `` raw_value``, первый отформатирован в соответствии с текущими пользовательскими параметрами, последний является прямым значением из: meth: [UNKNOWN NODE title_reference] (кроме Для полей даты и времени суток, отформатированных в соответствии с языковой настройкой пользователя <https://github.com/odoo/odoo/blob/8.0/addons/web_kanban/static/src/js/kanban.js#L900> [UNKNOWN NODE problematic]_)

`` read_only_mode``

сам за себя

Кнопки и поля

Хотя большинство шаблонов Kanban являются стандартными: ref: [UNKNOWN NODE title_reference], элементы представления Kanban` `` `` `` `` `` `` `` `` `` `` `` `` `` специально `

  • Поля по умолчанию заменяются их форматированным значением, если они не соответствуют конкретным видам отображения канбанов

  • Кнопки и ссылки с атрибутом `` type`` стали выполнять операции, связанные с Одо, а не их стандартную функцию HTML. Возможные типы:

    `` Действие``, `` объект``

    Стандартное поведение для: ref: [UNKNOWN NODE title_reference], можно использовать большинство атрибутов, относящихся к стандартным кнопкам Odoo.

    Открыть

    Открывает запись карты в режиме формы в режиме только для чтения

    Редактировать

    Открывает запись карты в режиме формы в редактируемом режиме

    delete

    Удаляет запись карты и удаляет карту.

API Javascript

class KanbanRecord()

: Js: class: [UNKNOWN NODE title_reference], обрабатывающий рендеринг отдельной записи на карту. Доступный в пределах его собственного представления как `` виджет`` в контексте шаблона.

kanban_color(raw_value)

Преобразует значение цветовой сегментации в класс цветов канбана: samp: [UNKNOWN NODE title_reference]. Встроенный CSS предоставляет классы до `` color_index`` от 9.

kanban_getcolor(raw_value)

Преобразует значение цветовой сегментации в индекс цвета (по умолчанию - от 0 до 9). Значения сегментирования цвета могут быть как числами, так и строками.

kanban_image(model, field, id[, cache][, options])

Создает URL-адрес для указанного поля в качестве доступа к изображению.

Аргументы
  • model (String) -- Модель хостинга изображения
  • field (String) -- Имя поля, содержащего данные изображения
  • id -- Идентификатор записи, содержащей изображение для отображения
  • cache (Number) -- Продолжительность кеширования (в секундах) браузера по умолчанию должна быть переопределена. `` 0`` полностью отключает кэширование
Результат
URL изображения
kanban_text_ellipsis(string[, size=160])

Вырезает текст за пределы указанного размера и добавляет к нему многоточие. Может использоваться для отображения начальной части потенциально очень длинных полей (например, описаний) без риска громоздких карточек

Календарь

Представления календаря отображают записи как события в ежедневном, недельном или месячном календарях. Их корневым элементом является `` <календарь> [UNKNOWN NODE problematic]. Доступными атрибутами в представлении календаря являются:

`` Date_start`` (обязательно)

Имя поля записи, содержащее дату начала события

`` date_stop``

Имя поля записи, содержащее дату окончания события, если предоставляется `` date_stop``, записи становятся подвижными (с помощью перетаскивания) непосредственно в календаре

`` date_delay``

Альтернатива `` date_stop``, обеспечивает продолжительность события, а не его дату окончания

Цвет

Имя поля записи, используемое для * сегментации цвета [UNKNOWN NODE problematic]. Записи в одном и том же цветовом сегменте выделяются в календаре тем же цветом подсветки, цвета распределяются полу-случайным образом.

`` event_open_popup``

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

`` Quick_add``

Включает создание быстрых событий при щелчке: запрашивает у пользователя `` имя`` и пытается создать новое событие именно с этим и временем события щелчка. Возвращается к полному диалоговому окну формы, если быстрое создание не выполняется

Дисплей

Формат строки для отображения событий, имена полей должны быть в скобках `` `` `` `` `` `

Весь день

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

Ганта

Представления Гантта должным образом отображают диаграммы Ганта (для планирования).

Корневым элементом представлений gantt является `` <gantt /> [UNKNOWN NODE problematic], у него нет потомков, но он может принимать следующие атрибуты:

`` Date_start`` (обязательно)

Имя поля, указывающее начало и дату начала события для каждой записи.

`` date_stop``

Имя поля, указывающее конечную продолжительность события для каждой записи. Может быть заменено на `` date_delay``. Должна быть предоставлена ​​одна (и только одна) [UNKNOWN NODE title_reference] и` [UNKNOWN NODE title_reference].

Если это поле `` False`` для записи, предполагается, что это «событие точки», и конечная дата будет установлена ​​на дату начала

`` date_delay``

Название поля, указывающее продолжительность события

Прогресс:

Имя поля, предоставляющего процент завершения для события записи, от 0 до 100

`` default_group_by``

Имя поля для группировки задач по

Диаграмма 4.

Вид диаграммы может использоваться для отображения ориентированных графиков записей. Корневой элемент `` <диаграмма> `` и не имеет атрибутов.

Возможными дочерними элементами диаграммы являются:

`` Node`` (обязательно, 1)

Определяет узлы графа. Его атрибутами являются:

1.1 Цель

Модель Одо в узле

Форма

Условное отображение формы, подобное цветам и шрифтам в: ref: [UNKNOWN NODE title_reference]. Единственной допустимой формой является `` rectangle`` (форма по умолчанию - многоточие)

цвет фона

То же, что и `` shape``, но условно отображает фоновый цвет для узлов. По умолчанию цвет фона - белый, единственной допустимой альтернативой является `` grey``.

`` Arrow`` (обязательно, 1)

Определяет направленные ребра графа. Его атрибутами являются:

`` Object`` (обязательно)

Модель Одо для края

`` Source`` (обязательно)

: Class: [UNKNOWN NODE title_reference] поле модели ребра, указывающее на запись исходного узла ребра

`` Destination`` (обязательно)

: Class: [UNKNOWN NODE title_reference] поле модели ребра, указывающее на запись целевого узла ребра

Метка

Список атрибутов Python (в виде цитируемых строк). Соответствующие значения атрибутов будут объединены и отображены как метка ребра

Метка

Пояснительная записка для диаграммы, атрибут `` строка`` определяет содержание заметки. Каждая `` метка`` выводится как параграф в заголовке диаграммы, легко видимая, но без особого акцента.

Поиск по умолчанию

Поля и фильтры поиска можно настроить с помощью контекста действия, используя ключи: samp: [UNKNOWN NODE title_reference]. Для полей значение должно быть значением, установленным в поле, для фильтров это логическое значение. Например, предполагая, что `` foo`` является полем, а `` bar`` - фильтром, контекстом действия:

{
  'search_default_foo': 'acro',
  'search_default_bar': 1
}

Автоматически активирует фильтр `` bar`` и ищет поле `` foo`` для * acro [UNKNOWN NODE problematic].

Qweb

Представления QWeb являются стандартными: ref: [UNKNOWN NODE title_reference] шаблоны внутри` [UNKNOWN NODE title_reference]. У них нет определенного корневого элемента.

Вид QWeb может содержать только один шаблон [#template_inherit] _, а имя шаблона * должно * совпадать с полным представлением (включая имя модуля): term: [UNKNOWN NODE title_reference].

: Ref: [UNKNOWN NODE title_reference] следует использовать в качестве ярлыка для определения представлений QWeb.

[1]

По причинам обратной совместимости

[2]

Добавлена ​​функция расширения для более простого соответствия в представлениях QWeb: `` hasclass (* classes) `` соответствует, если контекстный узел имеет все указанные классы

[3]

По историческим причинам он имеет свое происхождение из древовидных представлений, позже переориентированных на отображение большего количества таблиц / списков

[4]

Или нет шаблона, если это наследуемое представление, тогда: ref: [UNKNOWN NODE title_reference]