Найти тему
QuintaDB

Шаблон формы заказа для пиццерии

Оглавление

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

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

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

Ассортимент

Первым делом, мы создадим таблицу с ассортиментом. Используем следующие типы полей:

1) "Пицца" - тип Строка текста.

2) "Состав" - тип Многострочный текст.

3) "Фото" (для предпоказа пиццы) - тип Фотография.

4) "Цена" - тип Целое число.

-2

Заполняем форму и получаем таблицу с данными:

Заказы

Создаем следующую форму - "Заказы". Используем следующие типы полей:

1) "Пицца" - тип Связь с таблицей "Ассортимент", поле "Пиццы".

2) "Состав" и "Фото" - тип Связанная колонка из таблицы "Ассортимент", поля "Состав" и "Фото".

3) "Размер" - тип Радио кнопка с выбором из двух значений: "Маленькая" и "Большая".

4) "Стоимость пиццы" - тип Формула.

-3

Связанные колонки, а также поле Формула отображаются на форме, с помощью опции: Показывать поле на форме.

Расчет стоимости пиццы

Итак, у нас есть таблица "Ассортимент", которая содержит колонку с ценой каждой отдельной пиццы.

Также, в форме "Заказы" мы предоставляем выбор клиенту, между "Маленькой" и "Большой" пиццей. В зависимости от размера пиццы, цена будет отличаться.

Чтобы не создавать отдельные колонки с ценой для большой и маленькой пиццы, мы будем использовать такой инструмент, как "Функция" для поля Формула.

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

Чтобы выполнялся расчет цены, нужно выполнить следующие действия:

1. Создать поле Формула. Выбрать опцию "Функция".

2. Выбрать пункт "Script (Ruby)".

3. Написать код.

В данном случае имеем следующий код:

if 'размер' == 'Большая 45 см'
((цена_пиццы*1.25).round)
else 
(цена_пиццы).round
end

if 'размер' == 'Большая 45 см' -- Если в поле "Размер" выбрано значение "Большая 45 см"
((цена_пиццы*1.25).
round)  -- Тогда умножить цену пиццы на 1.25 (цена увеличивается на 25%). Дополнительно округляем значение.
else  -- В других случаях
(цена_пиццы).round --
Оставляем округленное значение цены пиццы.
end -- Завершили выполнение скрипта.

Как вы уже заметили, для расчетов используются HTML-названия полей. Чтобы скопировать название поля, нужно кликнуть по ссылке "Как вставлять данные записи".

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

-4

Форма заказа

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

Создаем новую форму: "Форма заказа".

Для удобства мы разделим форму на два блока и сделаем ее многостраничной.

На первой странице пользователь сможет выбрать пиццу, а на второй вводить свои контактные данные.

Создаем следующие поля:

1. "Номер заказа" - тип Автоинкремент. Данный тип поля не отображается на форме и будет автоматически присваивать номер заказу в таблице.

2. "Оформить заказ" - тип Секция. Используется для визуального оформления.

3. "Выберите пиццу" - тип Субформа, форма "Заказы".

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

Субформу "Выберите пиццу" настраиваем следующим образом:

1. Устанавливаем минимальное количество записей - 1.

2. Количество записей по умолчанию - 1.

Во вкладке "Настройки субформы":

3. Устанавливаем вид - "Таблица".

4. Скрываем лишние колонки, оставляя только название пиццы, размер и стоимость.

-5

5. Для ссылки "Добавить" изменим текст на: "Выбрать еще одну пиццу".

После разрыва страницы, добавляем блок с контактными данными:

1. "Контактные данные" - тип Секция.

2. "Имя", "Фамилия" - тип Строка текста. (Делаем обязательными в случае необходимости).

3. "Телефон" - тип Телефон. С использованием маски ввода.

4. "Email адрес" - тип Email адрес.

5. "Адрес" - тип Секция.

6. "Улица", "Дом", "Подъезд", "Квартира" - тип Строка текста. (Делаем обязательными в случае необходимости).

7. "Домофон" - тип Радио кнопка с выбором значений: "Есть" и "Нет".

8. "Код домофона" - тип Строка текста.

Создаем Правило для поля "Домофон". Если значение "Есть", то показать поле "Номер домофона". В противном случае, поле будет скрыто на форме.

Последние три поля на форме заказа:

1. "Сумма заказа" - тип Связанная колонка из таблицы "Заказы". Используется в данном случае для того, чтобы суммировать значения в колонке "Стоимость пиццы".

2. "Комментарий к заказу" - тип Многострочный текст.

3. "Чекбокс подтверждения" - обязательное поле, в котором пользователь дает согласие на обработку своих данных. Форма не будет отправлена без подтверждения.

Форма заказа готова!

Перейдем в меню "Виджет формы". Здесь вы можете настроить дизайн и некоторые функции виджета.

Подробнее читайте в этой статье.

Выбор пиццы:

Ввод контактных данных:

Таблица с данными:

Помните, что вы в любой момент можете изменить название/порядок колонок в таблице, а также скрыть ненужные в меню Колонки.

Шаблон проекта "Пиццерия"

Вы можете использовать данный шаблон и редактировать его на свое усмотрение.

Для этого достаточно открыть страницу Создания проекта, выбрать шаблон "Заказ пиццы" и нажать на кнопку "Использовать проект".