Общепринятые поля таблицы
Мы можем использовать несколько зарезервированных полей в нашей таблице. Используя эти поля, мы получаем над ними дополнительное управления с помощью фрэймворка Joomla. Как этим пользоваться будет написано ниже (с помощью класса JTable).
Итак, это поля:
Publishing - поле указывает, опубликован ли элемент, или нет. Имеет тип tinyint(1) и два значения 0 - неопубликован, 1 - опубликован.
Hits - отображает сколько обращений было к записи. Имеет тип integer и значение по-умолчанию 0.
Checking Out - на случай если запись могут редактировать несколько пользователей, мы можем блокировать ее с помощью этого поля. Для этого используется два поля checked_out и checked_out_time. checked_out имеет тип integer и содержит ID пользователя обратившегося к записи. checked_out_time имеет тип datetime и содержит дату и время обращения пользователя к записи. Если дата содержит значение null и id пользователя равен 0, то запись не заблокирована.
Ordering - нам часто будет нужно разрешить администратору указать по какому полю произвести сортировку. Поле ordering имеет тип integer, и может быть использовано для указания количества записей участвующих в сортировке и выводимых на экран. Это поле необязательно должно быть уникальным, и может быть использовано в запросе WHERE.
Parameter Fields - мы часто будем использовать поле параметров, по-умолчанию названное params и имеющее тип TEXT, для сохранения дополнительной информации о записях. Данные хранящиеся в этих полях закодированы как INI строки (которые мы обрабатываем в дальнейшем с помощью класса JParameter). Перед тем как использовать поле параметров, мы должны выбрать данные которые нужно хранить в нем. Данные должны соответствовать следующим критериям:
Пример схемы
Таблица нарисована для расширения названного 'My Extension' и записей названных обобщенно foobar. Имя таблицы будет #__myextension_foobars.
Поле |
Тип |
NOT NULL |
AUTO INC |
UNSIGNED |
По-умолчанию |
id |
INTEGER |
+ |
+ |
+ |
NULL |
content |
TEXT |
+ |
|
|
|
checked_out |
INTEGER |
+ |
|
+ |
0 |
checked_out_time |
DATETIME |
+ |
|
|
0000-00-00 00:00:00 |
params |
TEXT |
+ |
|
|
|
ordering |
INTEGER |
+ |
|
+ |
0 |
hits |
INTEGER |
+ |
|
+ |
0 |
published |
TINYINT(1) |
+ |
|
+ |
0 |
Эта таблица использует все зарезервированные поля и одно автоинкрементное ключевое поле ID.
Компьютерная помощь
Ремонт компьютеров
Ремонт ноутбуков
Заправка картриджей