Django_tables2 - css无法正常工作的一部分

时间:2017-06-27 07:23:59

标签: python css django

这是我第一次使用django_tables2插件 - 当然,我按照他们的文档中的安装和快速入门指南进行操作。
我已经安装了django-tables2,添加了' django_tables2'到我安装的应用程序,并确保' django.template.context_processors.request'是在模板选项中。
但是,我遇到了一个奇怪的异常现象。我在下面粘贴我的代码,以供参考 -

意见 -

from django.shortcuts import render
from .models import VM

def people(request):
    return render(request, 'home.html', {'vms': VM.objects.all()})

home.html -

{% load render_table from django_tables2 %}
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="{% static 'css/bs.css' %}" />
    <link rel="stylesheet" href="{% static 'django_tables2/themes/paleblue/css/screen.css' %}" />
    <link rel="stylesheet" href="{% static 'css/style.css' %}" type="text/css" />
</head>
<body>
    <div class="col-sm-offset-2 col-sm-10 text-center">
        <h2 id="Text">VM List</h2>
        {% render_table vms %}
    </div>
</body>
</html>

正如您所看到的,这正是docs中给出的内容。然而,虽然我的表格有些格式化,但它与我原先预期的完全不同。

这就是我得到的 -
My output

根据文档,这是我应该得到的。 -
{The correct stuff


请注意,实际上是获取了django_tables2 css。我一直关注源文件,django_tables2下的screen.css加载得很好。

编辑 - 检查表格的元素。一切都有类,除了表本身(应该是paleblue)。在检查器上添加该位有效,但如何通过代码执行此操作?不应该默认发生吗?

Inspector

1 个答案:

答案 0 :(得分:2)

我在模板标签代码中看到了这一点:

class OnTheFlyTable(tables.Table):
    class Meta:
        model = queryset.model

这是django表呈现的默认表,因为它不包含您在表标记中看到任何css类的任何css类。

现在来自代码中的文档字符串:

class OnTheFlyTable(tables.Table):
    class Meta:
        model = queryset.model
        attrs = {'class': 'paleblue'}

你必须使用类似下面的内容才能使用表的css类

来自我的文件参考阅读此代码: