Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何检查django_tables2对象为空/空?_Python_Django - Fatal编程技术网

Python 如何检查django_tables2对象为空/空?

Python 如何检查django_tables2对象为空/空?,python,django,Python,Django,我试图解决的问题: 仅当表格my_table不为空时才显示搜索栏,否则将其隐藏 以下是我的观点.py: def my_table(request): model1 = Model1.objects.all().filter(Q(some_query)) table = MyTable(model1) RequestConfig(request).configure(table) if not table: print "table is empty

我试图解决的问题:
仅当表格
my_table
不为空时才显示搜索栏,否则将其隐藏

以下是我的观点.py:

def my_table(request):
    model1 = Model1.objects.all().filter(Q(some_query))
    table = MyTable(model1)
    RequestConfig(request).configure(table)
    if not table:
        print "table is empty"
        table = None
    else:
        print "table is not empty."
    return render(request, 'my_table.html', {'my_table':table,})
这是我的
my_table.html

{% load render_table from django_tables2 %}
{% if my_table  %}
Number of entries: {{ my_table|length }}.
<section>
    <form method="post" action=".">
      {% csrf_token %}
      <input type="text" class="search-query span80" id="search" name="search" placeholder="Type to search">
      <button type="submit" class="btn">Search</button> 
    </form>
</section>
{% else %}
<!-- There's no my_table. -->
{% endif%}

{% render_table my_table %}
下面是MyModel的代码:

class MyModel(models.Model):
    entry1 = models.CharField(primary_key=True, max_length=11L, db_column='Entry1', blank=True) # Field name made lowercase.
    entry2 = models.CharField(max_length=11L, db_column='Entry2', blank=True) # Field name made lowercase.
class Meta:
    db_table = 'my_table'

在you views.py中,可以使用:

if table.data.data.__len__ > 0:
{% if table.data|length > 0 %}
do whatever you want here...
{% endif %}
在模板中,您可以使用:

if table.data.data.__len__ > 0:
{% if table.data|length > 0 %}
do whatever you want here...
{% endif %}

您是否尝试过
如果不是表[0]
?谢谢,但我的表不支持索引。它包含什么?谢谢,我在原始问题中添加了MyTable代码。