Два независимых потока (процессы) в Django-Viewflow под одним интерфейсом, исключение возбуждено - PullRequest
0 голосов
/ 09 июня 2018

Я пытаюсь реализовать два одинаковых независимых процесса (потока) под одним интерфейсом.После новой миграции я могу запустить один из них (столько раз, сколько мне нравится), и он работает нормально.Но когда я пытаюсь запустить другой, он вызывает исключение DoesNotExist («Запрос на сопоставление процесса (Х) не существует»).После этого невозможно запустить ни один из них.Похоже, что когда следующий узел был инициализирован (после запуска), объект процесса не может быть найден.

Обновление: Я попытался добавить свое приложение в демонстрационный пример viewflow.Мои процессы в порядке только при первом запуске.Запуск его после любых демонстрационных процессов (helloworld и т. Д.) Вызывает исключение.Все демонстрационные процессы запускаются плавно в любое время.

Разница в том, что моя модель процесса имеет простой пользовательский первичный ключ:

class Order(Process):
    order_no = models.AutoField(primary_key=True)
    ...

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

1 Ответ

0 голосов
/ 14 июня 2018

Поскольку это наследование нескольких таблиц, следует использовать поле OneToOneField, если требуется настраиваемое поле:

class Order(Process):
    process_ptr = models.OneToOneField(
        Process, on_delete=models.CASCADE,
        parent_link=True,
    )
    ...
...