python - 你如何使用 django-datatable-view

标签 python django datatable

我目前正在构建一个项目,该项目将在 Django 管理中显示相当多的数据我想使用 django-datatable-view 替换用于数据表的 ListView 它在功能列表中表示可以将其作为 ListView 的替代品放入其中。我可能没有正确阅读此内容,但我认为这意味着完全替换 ListView ,因此默认情况下使用数据表,这正是我想要的。我是 Django 的新手,似乎没有关于此附加组件的文档,他们有一些示例,但没有关于如何实际使用他们声称存在的功能的文档是否有人使用此附加组件将 Django 中的 ListView 替换为数据表。我想尝试默认为所有创建的新模型以及像 auth 这样我还没有扩展的模型默认执行此操作。

最佳答案

好吧,我已经在我的本地主机上测试了这个应用程序,这是一些结果(评论太多,所以我会在这里回答)

首先,你需要看这里:http://django-datatable-view.appspot.com/

它有一些关于如何实现 django-datatable-view 的文档。例如: http://django-datatable-view.appspot.com/zero-configuration/已经掌握了如何编写 View 来实现基于模型的表,

http://django-datatable-view.appspot.com/ordering/已经知道如何获取表中的订单,

http://django-datatable-view.appspot.com/javascript-initialization/已获得有关 js 的信息。

如果您克隆存储库并在本地主机上运行它会更好。在那里,您将能够试验 View 和模板(就像我尝试做的那样)。

在这里:https://github.com/pivotal-energy-solutions/django-datatable-view/blob/master/datatableview/tests/example_project/example_project/example_app/views.py ,您将看到如何对多种类型的 View (对于无配置表、特定列表等)进行编码。

其次,到目前为止我尝试了什么: 我这个项目的结构是这样的:

-Project
 manage.py
   -myapp(folder)
      views.py
      models.py
      urls.py
   -datatableview*(folder)
   -projectapp(folder)
      settings.py
      urls.py

*从克隆的 repo,我复制了 datatableview 文件夹并将其粘贴到我的项目中。

在我的应用>模型中:

class Post(models.Model):
       title= models.CharField(max_length=150)
       body = models.TextField()
       created = models.DateField() 

在我的应用程序中> View :

class MyView(DatatableView):
    model = Post
    datatable_options = {
        'columns': [
            'title',
            'body',
            'created',
            ]
    }

在我的应用程序中>urls:

url(r'^$', MyView.as_view(),  name='myview'),

在模板中: 在 (tempaltes/myapp/post_list.html)

{% block content %}
{{ datatable }}
{{ object_list }} 
{% endblock %}

结果是这样的:

title   body    created
[<post: one >, <post: two>]

此处 title body created 是表格列标题的名称。

PS:我知道这没什么帮助,但希望这些信息能帮助您走得更远。还有一点推荐,请看django-tables2

关于python - 你如何使用 django-datatable-view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24639916/

相关文章:

django - 如何将对象传递到表单并在 Django 中提交它们

javascript - 从 javascript 发送 DataTables 中的 JSON 对象

python - 如何在 FreeBSD 10.1 上增加每个进程的打开文件数限制?

python - 在 Python 中无限循环

python - Jupyter 笔记本使用错误的路径(使用 Miniconda 而不是 Anaconda)

javascript - DataTable createdRow 没有向行添加属性吗?

c# - 比较 2 个数据表以查找列之间的差异/准确性

python - 在 Python 中打开 matlab 代码

mysql - 打印数据库表的状态

python - Django urlpatterns - 太多值无法解压