我刚刚阅读了folowing article,我想了解有关使用TemplateColumn的第一种方法的更多信息。我想为每条记录编辑和删除方法生成两个伪列。
edit.html
> <a href="{% url some_url_edit record.pk %}" class="tbl_icon
> edit">Edit</a>
delete.html
> <a href="{% url some_url_del record.pk %}" class="tbl_icon
> delete">Delete</a>
class MyTable(tables.Table):
column_edit = tables.TemplateColumn(edit.html) column_delete = tables.TemplateColumn(delete.html)
如果这是正确的,根据文章如何在每个模板上传递record.pk以获取有关其密钥的必要信息?
答案 0 :(得分:1)
我担心您的代码有点错误,因为有人必须使用以下命令才能正确显示列中的图像:
edit = tables.TemplateColumn('<a href="{% url "edit_division" record.pk %}"><img src=\'{% load staticfiles %} {% static "images/edit.jpg" %}\' / width="25"></a>',verbose_name=u'Edit',)
delete = tables.TemplateColumn('<a href="{% url "delete_division" record.pk %}"><img src=\'{% load staticfiles %} {% static "images/delete.jpg" %}\' / width="25"></a>',verbose_name=u'Delete',)
我想问一下我是否可以在tables.py bootstrap css中使用以更好地呈现列和数据表?
答案 1 :(得分:0)
如果您想编辑或删除对象,则需要使用模型表:
class MyModelTable(tables.Table):
name = tables.columns.Column()
edit = tables.TemplateColumn('<a href='{% url "edit_my_model_instance" record.id %}'>Edit</a>', verbose_name=u'Edit', )
delete = tables.TemplateColumn('<a href='{% url "del_my_model_instance" record.id %}'>Delete</a>', verbose_name=u'Delete', )
class Meta:
model = models.MyModel
请注意我们如何使用record.id
将每行的ID传递给url
模板标记,以便输出正确的编辑/删除网址。