为Django提供的易于使用的表格API
项目描述
此API有助于快速轻松地创建表格。它允许显示模型数据、任意数据、注释数据等。它还允许通过CSV导出视图进行简单的CSV导出。
代码库文档良好,每个类都应该有一个相关的文档字符串。
安装
使用pip安装Python包
$ pip install sheepdog-tables
安装JavaScript依赖项
以下是一个Bower配置示例,包含支持的JavaScript依赖项版本。
{
"name": "my_project",
"version": "0.0.0",
"dependencies": {
"bootstrap": "3.0.1",
"backbone": "1.0.0",
"underscore": "1.4.4"
}
}
JavaScript是用coffeescript编写的,我们建议您使用类似django-compressor的项目来压缩您的静态文件并编译coffeescript。
$ pip install django-compressor==1.3
<script type="text/javascript" src="{% static "bower/jquery/jquery.min.js" %}"></script>
<script type="text/javascript" src="{% static "tables/js/jquery.ba-bbq.js" %}"></script>
<!-- To enable filtering -->
<script type="text/javascript" src="{% static "bower/underscore/underscore.js" %}"></script>
<script type="text/javascript" src="{% static "bower/backbone/backbone.js" %}"></script>
<script type="text/coffeescript" src="{% static "tables/js/filtering.coffee" %}"></script>
<!-- Event binding for sorting, pagination, etc. -->
<script type="text/coffeescript" src="{% static "tables/js/binding.coffee" %}"></script>
起点
对于此API,有一些需要注意的事项。将表格添加到页面中的主要mixin是TablesMixin。相应的模板位于tables/tables.html中。mixin应混合到继承自ListView的基于类的视图中。它应该在其相同功能的ListView方法之后运行其get_context_data方法。
每个表格都应声明为类参数。例如,如果我有两个表格,Table1和Table2,则我们可以有一个这样的类
class MyView(TablesMixin, ListView):
table_1 = Table1()
table_2 = Table2()
def get_context_data(self, **kwargs):
context = ListView.get_context_data(self, **kwargs)
context.update(TablesMixin.get_context_data(self, **kwargs)
表格类的工作方式类似于模型。有关详细信息,请参阅其类文档字符串。
使用此API的良好实践
此API的应用遵循Django和Python的一般规则。通常,将应用程序的所有表放在一个名为tables.py的文件中,将列放在一个单独的columns.py文件中是一个好主意,就像对表单和字段所做的那样。
项目详情
关闭
sheepdog-tables-1.2.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3f1112201fd2705c451f7835de6d1c5c9e7b59e73057c7d13dcf3cfc28e099e0 |
|
MD5 | 954d231295d5d67c7974ff706414e127 |
|
BLAKE2b-256 | a7906d978431b59052019b53b3250ad042a5cd345418e88f6592516740fb8010 |