Главная страница Обратная связь Карта сайта
ГлавнаяО продуктеКонструктор типов ресурсов



  

Демо-версия
сайт и интерфейс

Документация
все о системе

  

Служба поддержки
+7 (3412) 511419

Конструктор полей и типов ресурсов

Базовым понятием и начальным узлом дерева ресурсов C-Gator является библиотека. Каждая библиотека обладает собственным набором типов ресурсов, запросов, а также самих ресурсов предусмотренных типов. Так, например, библиотека Структура сайта содержит такие типы ресурсов, как папка, картинка, файл, страница и т.д. (подробнее эталонные типы ресурсов описаны в Руководстве дизайнера). Они стандартны и входят в базовый комплект поставки C-Gator.

Однако в системе имеется также возможность создавать свои библиотеки и типы ресурсов, пополняя тем самым стандартный набор — это одна из мощнейших возможностей расширения системы.

Не всегда есть смысл создавать библиотеку и прописывать ее типы ресурсов с нуля. Например, библиотека Структура сайта универсальна и может использоваться для создания сайтов в разных доменах. Для таких случаев в C-Gator предусмотрена возможность экспорта библиотеки во внешний файл (XML или ZIP) и последующего импорта библиотеки.

Экспорт/импорт библиотеки C-Gator

Тип ресурса – это сущность, которая определяет базовые свойства всех ресурсов данного типа, допустимые операции с этим ресурсом, а также особенности интерфейса C-Gator при работе с ресурсами данного типа.

Тип ресурса обладает определенным набором свойств:

Настройка типов ресурсов в C-Gator

Все типы ресурсов одной библиотеки разделяют один и тот же набор полей. При этом набор полей каждого типа ресурса является подмножеством набора полей библиотеки. Флажок слева от названия каждого поля задает, доступно ли поле для данного типа ресурса.

Определение полей в C-Gator

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

Настройка набора закладок для ресурсов в C-Gator

Для каждой закладки отдельно задается:

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

Каждый ресурс обладает набором характеристик (свойств), свойственных только для ресурсов этого типа. Значения этих характеристик сохраняются в полях. Каждое поле хранит отдельное значение своего типа. Например, поле «дата создания» типа DateTime хранит значение «29.08.2004». Также каждый ресурс обладает набором множественных свойств — деталей со своим набором настраиваемых полей.

Определение свойств полей в C-Gator

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

Text строка текста в произвольном формате. Допустимое количество знаков в поле задается дополнительным параметром «максим. кол-во символов» (не более 255)
Note текстовое многострочное поле, количество символов не ограничено
Number вещественное значение двойной точности (64-разрядное IEEE)
Integer целое число со значениями от -2 147 483 648 до 2 147 483 647, реальные пределы задаются доп.параметрами «минимальное значение» и «максимальное значение»
DateTime дата в диапазоне от 1 янв. 1753 до 31 дек. 9999, и время с точностью до 1/300 секунды
Boolean логическое поле — значения «истина» («true») и «ложь» («false»)
Currency денежная сумма в рублях или другой валюте
Choice значение поля выбирается из фиксированного списка значений
Multichoice значение поля — одно или несколько из фиксированного списка значений
Guid уникальное 128-битное значение, используется для идентификации
RatingScale рейтинг — используется для опросов и голосований
Status состояние ресурса в процессе его обработки — например, «на редактировании», «опубликован» и т.п.
File поле хранит содержимое файла, выбираемого пользователем
Url указатель на другой ресурс того же сайта или вне его
Calculated вычислимое поле. Значение поля вычисляется на основе формулы(SQL-выражения)
Counter поле-счетчик с возможностью изменения значения
Lookup значение поля выбирается из списка, получаемого из другого ресурса
User пользователь системы, значение выбирается из списка всех пользователей

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

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

Практически повсюду в системе, где вы видите список чего-либо, — этот список представляет из себя набор записей (выборку), полученных на основе запроса. Запрос описывает выборку полей ресурса или множественных полей, и описывается в виде XML.

Основная задача запроса — установка соответствия между названиями полей типов ресурсов и полями плоской таблицы в которых в итоге сохраняются данные.

Например запрос для списка новостей выглядит так:

    <?xml version="1.0" encoding="utf-16"?>
    <View QuerySource="2">
      <ViewFields>
        <fieldref name="title" />
        <fieldref name="date" />
        <fieldref name="description" />
        <fieldref name="content" />
        <fieldref name="published" />
      </ViewFields>
      <OrderBy>date desc,title</OrderBy>
      <Query>
          <and>
            <cond oper="geq">
              <expr fieldref="date" />
              <expr value="CAST(CONVERT(VARCHAR(20), DATEADD(day, 2-DATEPART(weekday, getDate()), getdate()), 112) + ' 00:00' as Datetime)" />
            </cond>

А так он отображается при выводе на странице сайта:

Отображение результата запроса на сайте

Rambler's Top100 CMS List: Обзор систем управления сайтами и программ для создания сайтов
© 2005–2012 ООО «Компания «Деловые программы»