разделить объект динамического c (не хранится в БД) между представлениями Django - PullRequest
0 голосов
/ 05 апреля 2020

my views.py

from django.shortcuts import render
from django.http import JsonResponse
from home_page.models import UploadNet
from home_page.forms import NetForm, ConfigForm
from backend.NetListBuilder import NetListBuilder
from backend.ConfigBuilder import ConfigBuilder

def set_configuration(request, net_file=None):
    if "upload_net" in request.POST:
        net_path = os.path.join("media/net_files", net_file.name)
        netlist = NetListBuilder(net_path)
        config = ConfigBuilder(netlist)
        context = {'config': config,}
        return render(request,'configuration.html', context=context,)
    return render(request,'configuration.html', {'net_file': None},)

def save_config(request):
    if request.is_ajax():
        response_data = {}
        json_data = {}
        json_data = request.POST['json_data']:
        response_data["result"] = "save file" 
        return JsonResponse(response_data)
    context = {'net_file': None}
    return render(request, 'rules_list.html', context=context)

Я хочу поделиться списками соединений и объектами конфигурации (без сохранения их в БД) в представлении rules_list. Как я могу это сделать? я должен передать их в конфигурацию. html файл?

1 Ответ

0 голосов
/ 06 апреля 2020

Django построен на философии запроса-> процесса-> ответа. Следовательно, между взглядами не может быть общих состояний. Но если вы все еще хотите поделиться, то используйте либо DB, локальное хранилище браузера или сеанс, доступный в Django. https://docs.djangoproject.com/en/3.0/topics/http/sessions/

Если вы пытаетесь поделиться выводом запроса или несериализуемыми данными, вам придется использовать кэш. https://docs.djangoproject.com/en/3.0/topics/cache/
ИЛИ

ЕСЛИ не кешировать временную таблицу, куда вы можете вывести данные и очистить данные после того, как вы закончили использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...