views.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:csv_generator 作者: fatboystring 项目源码 文件源码
def post(self, request, *args, **kwargs):
        """
        Custom post method
        Either exports a CSV or displays a form with errors

        :param request: Http Request instance
        :type request: django.http.HttpRequest

        :param args: Default positional args
        :type args: ()

        :param kwargs: Default keyword args
        :type kwargs: {}

        :return: Http Response instance
        """
        queryset = kwargs.get('queryset')
        generators = kwargs.get('generators')

        if generators.count() == 1:
            return self.render_csv_to_response(generators[0], queryset)

        form = self.form_class(generators=generators)
        if 'post' in request.POST:
            form = self.form_class(data=request.POST, generators=generators)
            if form.is_valid():
                generator = form.cleaned_data.get('generator')
                return self.render_csv_to_response(generator, queryset)

        return self.render_to_response({
            'title': 'Export to CSV',
            'form': form,
            'opts': queryset.model._meta,
            'queryset': queryset,
            'action_checkbox_name': admin.helpers.ACTION_CHECKBOX_NAME
        })
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号