我想将方法从第一类继承到第二个方法,该方法分为两个不同的文件。根据我的方法中给出的参数,我遇到了一个小问题。
我有一个名为: main.py
的文件class CustomCreateView(LoginRequiredMixin, SuccessMessageMixin, CreateView):
template_name = '...'
model = ...
def get_context_data(self, **kwargs):
""" Update the context data with query_string.
"""
context = super(CustomCreateView, self).get_context_data(**kwargs)
context['title'] = _("Add new ") + str(self.model._meta.verbose_name)
context['actual_page'] = get_actual_page(self.request)
context['actual_search'] = get_actual_search(self.request)
context['actual_sort'] = get_actual_sorting(self.request, self.default_sort_params[0])
context['actual_pagination'] = get_pagination(mylist, self.pk)
return context
def get_actual_page(request):
actual_page = request.GET.get('page', None)
...
return actual_page
def get_actual_sorting(request, default):
actual_sorting = request.GET.get('sorting', default)
return actual_sorting
def get_actual_search(request):
q = request.GET.get('q', '')
return q
def get_pagination(mylist, pk):
actual_pagination = [mylist[x:x + settings.PAGE_LIMIT] for x in range(0, len(mylist), settings.PAGE_LIMIT)]
...
return actual_pagination
我还有另一个文件: views.py
class MyFormView(PermissionRequiredMixin, CustomCreateView):
def get_context_data(self, **kwargs):
context = super(MyFormView, self).get_context_data(**kwargs)
page_row_ids = self.request.session.get('result_recordset', [])
my_pagination = context['actual_pagination']
actual_pagination, first_page, last_page, page_number = my_pagination(page_row_ids, pk)
问题:
在我的第一个文件中,我如何在context['actual_pagination'] = get_pagination(mylist, self.pk)
中编写自变量,以便在调用该列表时(例如page_row_ids
)插入任何列表?
非常感谢您
编辑
我在main.py文件中创建了一个函数:
def get_pagination(mylist, pk)
此函数带有2个参数:
myList
:必须用list
pk
:必须用id
我在get_context_data()
类中的CustomCreateView
方法中调用此函数。
现在我有另一个类(在第二个文件中),该类继承自CustomCreateView
。我想通过将get_pagination
的{{1}}参数替换为myList
的{{1}}来调用方法page_row_ids
。
所以在我的孩子班上,我想得到:
pk
文件“ /home/Bureau/Projets/my_project/src/app/views.py”位于 get_context_data 872. context = super(MyFormView,self).get_context_data(** kwargs)
文件“ /home/.pyenv/versions/3.6.2/envs/3.6.2/src/app/main.py”位于 get_context_data 50. context ['actual_pagination'] = get_pagination(myList,self.pk)
异常类型:/ slug / edit / 41处的AttributeError异常值: “ MyFormView”对象没有属性“ myList”
我该怎么做?希望通过我的编辑更清晰