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

Помогите пожалуйста, совершенно не понимаю логики реализации этой фичи —

https://docs.google.com/document/d/1taxClgABpWC2Snl02hHJLT1_82H18Msv9gszvl5Jl30/edit?usp=sharing
То есть мне надо отобразить список всех шаблонов, там же формы для создания контракта по определенному шаблону. Буду безумно рад любой подсказке и помощи

51 ответов

58 просмотров

Документ приватный, без запроса доступа не посмотреть

в общем так и не понял что именно вызывает затруднение, но на всякий случай посмотри вот это https://docxtpl.readthedocs.io/en/latest/

шаблон типо в тройных кавычках? """{{fio}}"""?

ninja2 используй прост, если так

либо обычный форматтер

ninja2?

Ну шаблонизатор

ну наверное jinja все же))

Yeskela-Franco Автор вопроса

Есть две модели: ContractTemplate и Contract. У меня есть три объекта модели шаблон контракта с названиями: Первый, Второй, Третий. Они все выводятся. Напротив каждого форма ФИО и СУММА, форма была сделана от модели Contract(тк там эти поля). Я беру и заполняю форму ФИО и СУММА у шаблона контракта Второй, нажимаю на кнопку и у меня создается объект модели Contract, который автоматом привязывается к шаблону контракта Второй

Когда ты говоришь "у меня есть" и потом говоришь "вот это все я не понимаю как реализовать" я не понимаю где закончилось то, что у тебя уже есть и началось то что ты не понимаешь. Давай попробуем по порядку, есть 2 модели, шаблоны и договоры, в шаблонах у тебя три инстанса, в которых есть поле файлфилд и в него положен шаблон сделанный при помощи docxtpl (например). Теперь нужно чтобы у тебя в интерфейсе ты мог ввести данные в поля, соответствующие необходимым полям в договоре, после чего фронт отправляет данные запросом на бэк, вьюха получает, валидирует данные, создает договор с указанными данными. Дальше или прямо во вьюхе, или в методе save модели договора или при помощи сигнала, создается файл из нужного шаблона и в него передаются данные из договора, после чего полученный файл привязывается к договору.

Yeskela-Franco Автор вопроса

Давай я конкретизирую вопрос. Вот модели https://pastebin.com/B75AAVJi Вот измененная задача https://docs.google.com/document/d/1taxClgABpWC2Snl02hHJLT1_82H18Msv9gszvl5Jl30/edit?usp=sharing Я убрал все ненужное и оставил саму суть этой фичи

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

Yeskela-Franco Автор вопроса

так, окей. Я не понимаю как мне автоматически привязать модель Contract к Contract Template при создании контракта

Если не хочешь тратить время, заюзай сигнал

у тебя как выбирается какой именно шаблон будет привязан?

я думаю, там вопрос глубже, где-то на уровне отношений

Yeskela-Franco Автор вопроса

вот так это выглядит если что

Да вроде по гугл доку все проще

Yeskela-Franco Автор вопроса

скрепка после формы с суммой — кнопка создать

ну вот ты передаешь во вьюху не только данные полей которые пользователь заполнил, но и id нужного тебе шаблона, во вьюхе создаешь инстанс и в поле шаблона передаешь этот id

Yeskela-Franco Автор вопроса

как мне передать id нужного шаблона, если это просто список

ну так кнопка возле какого-то шаблона, ты нажимаешь на кнопку возле определенного шаблона, его id и передаешь

)))

у тебя же эти шаблоны слева выводятся в каком то template через tag for?

из шаблона где они выводятся

Yeskela-Franco Автор вопроса

Да, они выводятся через for contract_templates in contracts. То есть во вьюхе я рендерю квери сет со всем шаблонами договора

нууу, в этой же вбюхе и создавай

а у тебя здесь, кстати, при нажатии на скрепку, и делается и сразу скачиваются?

Yeskela-Franco Автор вопроса

Нет, создается и копируется ссылка, но на второе не надо обращать внимание

да, не, это я чисто для себя

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

Yeskela-Franco Автор вопроса

https://pastebin.com/xkfUgQLT

в каком у тебя здесь месте выбираются шаблоны?

у тебя договор это и есть шаблон?

Договор Москва.docx это шаблон?

Yeskela-Franco Автор вопроса

ну тип это все шаблоны контрактов

Yeskela-Franco Автор вопроса

не обращай внимание

+ это что?

мне нравится, когда из кусочка проекта берут код и хуй пойми что, где и откуда берется)

))

Yeskela-Franco Автор вопроса

да нет, была бы она обычная, я бы сделал

тя смущает то, что это в docx записывается или что?

он не может id взять у шаблона, а шаблон через один к многим сделан

Yeskela-Franco Автор вопроса

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

а ты рендеришь в шаблоне данные ?

Yeskela-Franco Автор вопроса

не понял

да, я уже ему говорил брать через request.post id, но он не понимает как)

Yeskela-Franco Автор вопроса

я знаю что это такое. Как у меня в реквесте окажется айди шаблона контракта, если это айди давно уже в бд

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

Yeskela-Franco Автор вопроса

шаблоны контрактов я просто вывожу через contract_template_list

Да где ты их выводишь

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

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

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
Я тут за тем, чтобы задать вопрос, так как не знаю ассемблер, учу с/с++. Короче, насколько дорога операция перехода в функцию при ее вызове? Дело в том, что в с++ есть макросы...
Максим Рябцев
12
А какие чаты вообще в ходу? Auto aim? И что еше
do you think you're better off alone? А
13
hello friends. Do you know how can I learn getx? I have a software project that I should deliver it up to 5 weeks later and I need to learn firebase too. I will be thankfull
AmirHossein Razavi
15
Привет, нужен совет старших товарищей. Есть глобальная переменная var DefaultDataFolder:string; инициализируем DefaultDataFolder:='a:\_OUT\'; есть примитивная процедур...
Max Otto
14
Доброе время суток! у меня тут иноды закончились. и понял почему по сути кстит, я периодически очищаю постгрес и сентри контайнер: postgres=# DELETE FROM nodestore_node WHER...
Юсиф Насиров
9
Вопрос. Теоретический. Есть список команд. Команды отправляю в обработку некой функции, по очереди. Разные команды могут давать разные результаты после обработки. В зависимос...
Serjone
7
Какой дос блять?
007
9
lazarus-3.2.0/gtk, linux патч "имя проекта по умолчанию project1 -> prj" день добрый не нравится "именя проекта по умолчанию" (project1), к.раз приходится переименовывать (н...
livontiy
5
Коллеги, а в чём сейчас хорошо писать на перле, в смысле ide? Пробовал в идее с плагином, подсветка есть, даже какие-то предупреждения есть, но рефакторинга считай нет. Перене...
Дмитрий Петров
9
Карта сайта