Como passar dados entre visualizações do django

este perguntas aborda minha pergunta de maneira genérica, mas estou procurando uma explicação mais específica.

Eu gostaria que um usuário atualizasse um grupo de objetos de modelo, no entanto, o conjunto de consultas para esses objetos precisará ser recuperado primeiro. Meu plano é fazer isso em duas URs / visualizações separadas, obtendo as informações do conjunto de consultas desde o primeiro e exibindo o conjunto de formulários do modelo a ser atualizado a seguir.

Minha primeira visualização fornece uma lista de todos os "Projetos" (Um dos meus modelos) e recupera o ID do projeto selecionado.

Aqui está o formulário:

class ProjectLookupForm(forms.Form):
    Project_Name = chosenforms.ChosenModelChoiceField(queryset=Project.objects.all())

e aqui está a visão:

def update_project_filter(request):
    project_form = ProjectLookupForm(request.POST or None)
    if request.method == 'POST':
        if project_form.is_valid():
            context = {"project_form":project_form}
            # Get project here and share it with the next view.
            selected_project_id = project_form.cleaned_data["Project_Name"].id
            # Add a new return statement here?
            # Or call update project view from here?
            # Add a redirect button to html?
        else:
            errors = project_form.errors
            context = {"errors":errors, "project_form":project_form}
    else:
        context = {"project_form":project_form}
    return render(request, 'filter_update_project_form.html', context)

Como se pode ver, incluí alguns comentários discutindo quais são minhas possibilidades. Meu objetivo é enviar o selected_project_id para a próxima exibição, para que ele possa usar esse ID como um conjunto de consultas de formulário de modelo.

def update_project(request):
    UpdateFormset = modelformset_factory(Sample, fields=("sample_name", "extraction_date", 
                                                     "project", "order", "notebook", "notebook_page"))
    if request.method == 'POST':
        formset = UpdateFormset(request.POST, request.FILES)
        if formset.is_valid():
            formset.save()
            context = {"formset": formset, "project_form":project_form}
        else:
            errors = formset.errors
            context = {"formset":formset, "errors":errors, "project_form":project_form}
    else:
        formset = UpdateFormset(queryset=Sample.objects.filter(project=2))
        context = {"formset":formset, "project_form":project_form}
    return render(request, 'update_project_form.html', context)

Pode-se ver aqui que codifiquei o conjunto de consultas da seguinte maneira:

queryset=Sample.objects.filter(project=2)

Como posso definir "project =" como meu selected_project_id? Eu passo essas informações para a visualização como um parâmetro de entrada? Ou o envio para o próximo URL e o levo a partir daí?

questionAnswers(1)

yourAnswerToTheQuestion