Django: Как я могу использовать переменную, определенную в другом .py файле? - PullRequest
0 голосов
/ 26 сентября 2019

Я хотел бы использовать ниже x в качестве переменной в функции get_price () в другом файле plots.py.

views.py

class ScatterView(TemplateView) :
    def get(self, request, *args, **kwargs) :
        context = super().get_context_data(**kwargs)
        context['form'] = SampleForm() 
        x = request.GET.get('x')
        context['calculated_x'] = plots.get_price()
        return render(request, 'index.html', context)

plot.py

def get_price():
    input_x = x + 1
    return input_x

Но это не работает.Как мне описать функцию для этой цели?Дело в том, что мне нужно использовать возвращаемое значение для шаблона позже через views.py.

Ответы [ 2 ]

0 голосов
/ 26 сентября 2019

Вам нужно передать x в get_price (x) в plot.py

views.py

import plot.ply as plots
class ScatterView(TemplateView) :
    def get(self, request, *args, **kwargs) :
        context = super().get_context_data(**kwargs)
        context['form'] = SampleForm() 
        x = request.GET.get('x')
        context['calculated_x'] = plots.get_price(x)
        return render(request, 'index.html', context)

plot.py

    def get_price(x):
        input_x = x + 1
        return input_x
0 голосов
/ 26 сентября 2019

Почему бы просто не пройти?Измените свой код на что-то вроде этого:

def get_price(x):
    input_x = x + 1
    return input_x

Импортируйте его в класс следующим образом:

import plots

Добавьте его в свой код следующим образом:

class ScatterView(TemplateView) :
    def get(self, request, *args, **kwargs) :
        context = super().get_context_data(**kwargs)
        context['form'] = SampleForm() 
        x = request.GET.get('x')
        context['calculated_x'] = plots.get_price(x)
        return render(request, 'index.html', context)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...