Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
2 / 2 / 1
Регистрация: 05.03.2015
Сообщений: 191

Начальная выборка для формы

18.03.2020, 15:42. Показов 450. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Не могу никак разобраться как разрешить такую проблему.
Есть модель:
Python
1
2
3
4
class n_mod(models.Model):
    dev       = models.ForeignKey(c_dev, on_delete=models.CASCADE, verbose_name="Устройства", db_index=True)
    opis = models.TextField(blank=True, verbose_name="Описание")
    pers      = models.ForeignKey(lu_pers, blank=True, null=True, on_delete=models.SET_NULL, verbose_name="ФИО")
Есть форма этой модели:
Python
1
2
3
4
5
6
7
8
9
class n_modForm(ModelForm):
    class Meta:
        model = n_mod
        fields = '__all__'
        widgets = {
            'dev': forms.Select(attrs={"class": "form-control selectpicker"}),
            'opis': forms.Textarea(attrs={"class": "summernote"}),
            'pers': forms.Select(attrs={"class": "form-control selectpicker"}),
        }
Есть вью по отображению этой формы (точнее для редактирования уже существующей):
Python
1
2
3
4
5
6
7
8
9
10
11
def n_edit(request, pk):
    n = get_object_or_404(n_mod, pk=pk)
    if request.method == "POST":
        form = c_narForm(request.POST, instance=n)
        if form.is_valid() :
            nar = form.save()
    else:
        form = c_narForm(instance=nar)
 
    context = {'form': form}
    return render(request, 'n_edit.html', context)
Вопрос в следующем у модели n_mod есть поле pers, которое связано с моделью lu_pers. При этом логика работы такова, что при выборе в модели n_mod определенного dev выборка pers ограничивается (в зависимости от dev). Т.е. у определенного устройства есть свой набор персонала. Как мне в случае редактирования уже существующей записи модели n_mod передать в нее необходимую выборку из модели lu_pers?

PS когда создаю новую запись в модели n_mod, эту проблему обошел очень просто - при выборе устройства в поле dev отправляю ajax который для соответствующего устройства забирает набор персонала и дальше уже js перезаписываю перечень в поле pers
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.03.2020, 15:42
Ответы с готовыми решениями:

начальная скорость для ШД
Привет, всем. Есть ШД и драйвер для него STEP/ENB/DIR. Может ли ШД сразу начать вращение с большой скоростью, например, 100 об/сек, или...

Начальная форма для работы с БД
кто может поделиться проектом в рад студио приконекчена mysql и сделаны кнопки для простых действий (добавить, выбрать, удалить) не знаю,...

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

4
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
18.03.2020, 22:20
Аналогично как и при создании, через ajax
0
2 / 2 / 1
Регистрация: 05.03.2015
Сообщений: 191
19.03.2020, 10:39  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
Аналогично как и при создании, через ajax
Думал, что есть более элегантный способ. Может быть что то вроде передачи initial. Через ajax понятно, как сделать
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
19.03.2020, 10:48
BenWade, в любом случае, нужно делать заппрос на бек через ajax
0
2 / 2 / 1
Регистрация: 05.03.2015
Сообщений: 191
19.03.2020, 10:50  [ТС]
m0nte-cr1st0, ок, спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.03.2020, 10:50
Помогаю со студенческими работами здесь

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

В оглавлении сделать нумерацию страниц диапазоном для каждой главы (заглавия) начальная/последняя
Доброго времени суток. Столкнулся с необходимостью сделать специфическое для меня оглавление. Попробую сразу привести пример, чтоб пояснить...

Выборка по данным формы
Привет! Есть БД с договорами и есть форма (просмотр договора), которая выводит данные по договору. Также на форме располагается кнопка на...

Выборка из формы в отчет
Добрый вечер. Вопрос такой, как форме выбрать только те даные которые надо отправить в отчет. Как подключить флажок к каждой строке, и...

Выборка по id элемента формы
Добрый день! Есть такой select <select id="tematic" style="float: right; margin-right: 5px; margin-top: 5px; cursor:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru