Импортировать класс Django из представления в другой файл - PullRequest
0 голосов
/ 21 мая 2019

Добрый день всем,

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

Этот класс довольно прост, но она также использует специальное промежуточное ПО:

# main.views.py file
class MyClass:
    def my_main_function(self, request):
        my_queryset = myModel.objects.filter(application=request.cur_app, display=True).order_by('order')
        return my_queryset

    def toto(self):
        list_test = self.my_main_function()
        return list_test

request.cur_app соответствует моему промежуточному ПО, определенному в файле middleware.py.

Я создал toto(), потому что я хотел бы использовать my_main_function внутри другого файла с именем menus.py, который не обрабатывает request.

В этом файле у меня есть:

from .views.main import MyClass

for element in MyClass.toto():
    ... do something ...

Но возникла проблема:

toto () отсутствует 1 обязательный позиционный аргумент: 'self'

Я убежден, что в моем коде могут возникнуть серьезные проблемы, потому что я одновременно изучаю программирование. Будь снисходительным.

...