НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
45 of 152 menu

Таблица oc_custom_field_value

Таблица oc_custom_field_value является вспомогательной таблицей для системы пользовательских (дополнительных) полей в OpenCart. Она хранит предопределенные варианты значений для полей с типами "Выпадающий список", "Радиокнопки" и "Флажки".

Поля

Поле Тип данных Описание
custom_field_value_id int Уникальный идентификатор значения дополнительного поля. Первичный ключ таблицы.
custom_field_id int Внешний ключ, который связывает значение с конкретным дополнительным полем. Ссылается на таблицу oc_custom_field.
sort_order int Порядок сортировки значения в списке вариантов. Определяет последовательность отображения значений в выпадающем списке или группе переключателей.

Как это работает

В админ-панели OpenCart при создании или редактировании дополнительного поля с типом "Select", "Radio" или "Checkbox" администратор может добавить несколько предопределенных вариантов выбора. Каждый такой вариант представляет собой запись в таблице oc_custom_field_value.

Каждое значение связано с родительским полем через custom_field_id. Поле sort_order позволяет управлять порядком отображения значений в интерфейсе.

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

Когда пользователь выбирает один из вариантов в форме (например, при регистрации или оформлении заказа), выбранное custom_field_value_id сохраняется в основном поле (например, в oc_customer.custom_field или oc_address.custom_field) в формате JSON.

Пример SQL-запроса

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

SELECT cfv.custom_field_value_id, cfvd.name FROM oc_custom_field_value cfv LEFT JOIN oc_custom_field_value_description cfvd ON (cfv.custom_field_value_id = cfvd.custom_field_value_id AND cfvd.language_id = 1) WHERE cfv.custom_field_id = 5 ORDER BY cfv.sort_order ASC;

Смотрите также

  • таблицу oc_custom_field,
    которая содержит основные настройки дополнительных полей
  • таблицу oc_custom_field_value_description,
    которая хранит переводы значений дополнительных полей
  • таблицу oc_customer,
    где хранятся выбранные значения дополнительных полей для клиентов
  • таблицу oc_address,
    где хранятся выбранные значения дополнительных полей для адресов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить