170 похожих чатов

Всем привет! Друзья, помогите советом о том, как реализовать страницу

заказа.
У меня уже есть страница заказа с formset. Изначально видна одна форма, потом, по нажатии на кнопку +, появляются новые формы при помощи js.
В форме есть три поля: image (выбирает юзер сам, ни на что не влияет), размер image и количество копий image. Последние два параметра влияют на цену одного item (формы) и соотв. на total_sum. formset (orderitem) при отправке создаёт запись в таблицу Order.
Следовательно, у меня несколько вопросов:
1) Как это лучше реализовать? Тоже через js?
2) Безопасно ли это делать через js и как можно будет сгенерированную сумму передавать в Order? создавать поле total_sum и заполнять его под капотом?
В общем, если кто-то может помочь — буду очень рада)

10 ответов

17 просмотров

1 логику добавления в заказ через js 2 total_sum и в целом формирование заказа делаешь на бэке

женя- Автор вопроса

Я так и думала, но не очень ясно, как цену формировать и на бэке, и в js. Правильно понимаю, что формулу создания цены нужно реализовать и на бэке, и на js?

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

женя- Автор вопроса

а как это делать динамически, без перезагрузки стрианицы?

ajax?

ajax axios fetch

женя- Автор вопроса

поняла, большое спасибо!

женя- Автор вопроса

я правильно понимаю, что с помощью ajax я должна обращаться к функции высчитывания цены на бэке? отправки формы ничего нигде не сохраняется, верно?

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

женя- Автор вопроса

Приблизительно поняла...

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
А табстоп это сообщение от окна или от элемента управления?
The Bird of Hermes
18
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Открыл свой двухкилобайтный экзешник в x32dbg, а тут какая-то хрень. Смущает кнопка "выполнить до пользовательского кода", а что ещё может быть в файле помимо него ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
11
Мне были интересны дишные хаки и я нашёл любопытный способ на форуме через __traits, что-то вроде int delegate(int) fac = (int n) => n == 0 ? 1 : n * __traits(parent, {})(n - ...
Constantin F.
1
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Вопрос тем кто смотрит видео и слушает подкасты - как вы потом ищете нужную вам информацию? Вот статью я прочитал, потом могу искать нужную мне часть банальным поиском. Пропус...
Aleksandr Druzhinin
4
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
Хотел бы спросить у знающих, правильную ли я выбрал книгу для начала изучения ассемблера Юрова В.И ? Или есть более лучшие книги для начала обучения?
Botsman
31
Карта сайта