小编Nic*_*ico的帖子

Django - 混合ListView和CreateView

我想创建一个带有表单的页面,每次我提交表单时,它都会在表单下方的列表中添加一个项目.

我可以使用2页来使其工作:

  • 一页使用mixin CreateView添加项目
  • 一页ListView有列表.

但我正在尝试将表单和列表放在同一页面上.所以我尝试用mixin创建一个类:

class FormAndListView(ListView, CreateView):
    pass
Run Code Online (Sandbox Code Playgroud)

然后我用过这个课:

FormAndListView.as_view(
    queryset=PdfFile.objects.order_by('id'),
    context_object_name='all_PDF',
    success_url = 'listview',
    form_class = UploadFileForm,
    template_name='textfrompdf/index.html',)),
Run Code Online (Sandbox Code Playgroud)

但是当我尝试加载页面时,我收到错误: Exception Value: 'FormAndListView' object has no attribute 'object'

Traceback:
File "C:\Program Files\Python_2.7\lib\site-packages\django\core\handlers\base.py" in get_response
  111.                         response = callback(request, *callback_args, **callback_kwargs)
File "C:\Program Files\Python_2.7\lib\site-packages\django\views\generic\base.py" in view
  47.             return self.dispatch(request, *args, **kwargs)
File "C:\Program Files\Python_2.7\lib\site-packages\django\views\generic\base.py" in dispatch
  68.         return handler(request, *args, **kwargs)
File "C:\Program Files\Python_2.7\lib\site-packages\django\views\generic\list.py" in get
  122.         return self.render_to_response(context)
File "C:\Program Files\Python_2.7\lib\site-packages\django\views\generic\base.py" in render_to_response
  94.             template …
Run Code Online (Sandbox Code Playgroud)

django listview mixins

13
推荐指数
3
解决办法
1万
查看次数

标签 统计

django ×1

listview ×1

mixins ×1