def entry_filter(request, project): kwargs = { 'queryset': Entry.objects.published(request).filter(project=project), 'filter_class': EntryFilterSet, 'extra_context': { 'project': project, } } return list_detail.object_filter(request, **kwargs)
def entry_filter(request, author, queryset=None, extra_context=None): if not queryset: queryset = Entry.objects.published(request) if author: queryset = queryset.filter(author=author) dict_info = dict( queryset = queryset, filter_class = EntryFilterSet, extra_context = extra_context if extra_context else {'author': author}, ) return list_detail.object_filter(request, **dict_info)
def report_list(request, product): kwargs = { 'queryset': Report.objects.filter(product=product), 'filter_class': ReportFilterSet, 'initial': { 'product': product, }, 'extra_context': { 'product': product, } } return list_detail.object_filter(request, **kwargs)
def thread_filter(request, project=None): qs = Thread.objects.published(request) if project: project = get_object_or_404(Project, slug=project) qs = qs.filter(project=project) kwargs = { 'queryset': qs, 'filter_class': ThreadFilterSet, 'extra_context': { 'project': project, }, } return list_detail.object_filter(request, **kwargs)
def project_filter(request, author=None, category=None): qs = Project.objects.published(request) if author: qs = qs.filter(author=author) if category: qs = qs.filter(category=category) kwargs = { 'queryset': qs, 'filter_class': ProjectFilterSet, 'extra_context': { 'author': author, 'category': category, } } return list_detail.object_filter(request, **kwargs)
def task_filter(request, project=None): if project: qs = Task.objects.published(request).filter(project=project) else: if not request.user.is_authenticated(): # ログインしていないユーザーは自分のタスク一覧を見れない raise Http403 qs = Task.objects.relative(request, request.user) kwargs= { 'queryset': qs, 'filter_class': TaskFilterSet, 'extra_context': { 'project': project, }, } return list_detail.object_filter(request, **kwargs)
def material_filter(request, author=None, project=None): if author: author = get_object_or_404(User, username=author) qs = Material.objects.published(request).filter(author=author) else: qs = Material.objects.commons(request) if project: project = get_object_or_404(Project, slug=project) qs = qs.filter(project=project) kwargs = { 'queryset': qs, 'filter_class': MaterialFilterSet, 'extra_context': { 'author': author, 'project': project, } } return list_detail.object_filter(request, **kwargs)
def profile_filter(request): kwargs = { 'queryset': Profile.objects.published(request), 'filter_class': ProfileFilterSet, } return list_detail.object_filter(request, **kwargs)
def event_filter(request): kwargs = { 'queryset': Event.objects.active(request), 'filter_class': EventFilterSet, } return list_detail.object_filter(request, **kwargs)