我目前正在构建一个项目,它将在Django管理员中显示相当多的数据我想用django-datatable-view替换用于数据表的列表视图,它在列表中说明它可以是作为列表视图的替代品。我可能没有正确阅读这个,但我认为这意味着完全取代列表视图,因此默认使用数据表这是我想要的。我是Django的新手,似乎没有关于这个附加组件的文档,他们有一些示例,但没有关于如何实际使用他们声称存在的功能的文档,任何人都使用此附加组件替换了Django中的列表视图和数据表。我想尝试默认为所有创建的新模型执行此操作,但也尝试使用我尚未扩展的auth模型。
答案 0 :(得分:8)
好吧,我已经在我的localhost上测试了这个应用程序,这里有一些结果(评论太多了,所以我会在这里回答)
首先,您需要看一下:http://django-datatable-view.appspot.com/
它有一些关于如何实现django-datatable-view的文档。例如: http://django-datatable-view.appspot.com/zero-configuration/已经有了如何编写视图来实现基于模型的表,
http://django-datatable-view.appspot.com/ordering/已经获得了如何获得订单,
http://django-datatable-view.appspot.com/javascript-initialization/已获得有关js
的信息。
如果您克隆repo并在localhost中运行它,那就更好了。在那里,您将能够尝试视图和模板(正如我尝试做的那样)。
在这里:https://github.com/pivotal-energy-solutions/django-datatable-view/blob/master/datatableview/tests/example_project/example_project/example_app/views.py,您将看到如何编码多种类型的视图(对于没有配置表,特定列表等)。
其次,到目前为止我尝试了什么: 我这个项目的结构是这样的:
-Project
manage.py
-myapp(folder)
views.py
models.py
urls.py
-datatableview*(folder)
-projectapp(folder)
settings.py
urls.py
*从克隆的repo中,我复制了datatableview文件夹并将其粘贴到我的项目中。
在myapp>模型中:
class Post(models.Model):
title= models.CharField(max_length=150)
body = models.TextField()
created = models.DateField()
在myapp>视图中:
class MyView(DatatableView):
model = Post
datatable_options = {
'columns': [
'title',
'body',
'created',
]
}
在myapp>网址:
url(r'^$', MyView.as_view(), name='myview'),
在模板中: in(tempaltes / myapp / post_list.html)
{% block content %}
{{ datatable }}
{{ object_list }}
{% endblock %}
结果是这样的:
title body created
[<post: one >, <post: two>]
此处title body created
是表格列标题的名称。
答案 1 :(得分:1)