Django Viewflow - Передача значений полей через урлы при запуске процесса

Возможно ли **, передать значение процессу через стартовый url/path.

У меня есть модель процесса с полем note.

Я хочу запустить новый поток процесса и передать заметку в url, например

http://server.com/my_process/start/?note=mynote

Поскольку Viewflow - это тонкий слой рабочего процесса, построенный поверх Django, обработка параметров URL работает так же, как и в Django. Параметры доступны в объекте request.GET, и вы можете использовать их в пользовательском представлении в соответствии с вашими потребностями.

Например, чтобы предварительно инициализировать пользовательскую форму значением из URL, вы можете создать собственный подкласс CreateProcessView:

from viewflow.workflow.flow.views import CreateProcessView

class CustomCreateProcessView(CreateProcessView):
    """
    Custom view to initialize a process with data from the request URL.
    """

    def get_initial(self):
        initial = super().get_initial()
        initial['text'] = self.request.GET.get('note', '')
        return initial

При таком подходе при переходе по URL, например http://server.com/my_process/start/?note=mynote, параметр note будет извлечен и использован для инициализации текстового поля в форме.

За более подробной информацией обратитесь к документации Django по представлениям на основе классов и обработке URL.

Вернуться на верх