首页 > python web

Django中ORM找出内容不为空的数据实例

时间:2020-07-04 python web 查看: 1107

在django操作数据库的时候如何找出内容不为空的数据呢?

from django.db.models import Q

class Index(VIew):
 def get(self, request):
 userObj = models.Asset.objects.filter(~Q(asset_id = '')
 return HttpResponse('yes')

上面代码中的models.Asset.objects.filter(~Q(nick = '')则是使用Q函数去找出nick不为空的数据,主要使用~Q

补充知识:Django报错 HINT: Add or change a related_name argument to the definition for 'GodownentryReturn.suppl

Unhandled exception in thread started by
Traceback (most recent call last):
File “G:\workspace\pycharm\carwin\carwin_env\lib\site-packages\django\utils\autoreload.py”, line 226, in wrapper
fn(*args, **kwargs)
File “G:\workspace\pycharm\carwin\carwin_env\lib\site-packages\django\core\management\commands\runserver.py”, line 116, in inner_run
self.check(display_num_errors=True)
File “G:\workspace\pycharm\carwin\carwin_env\lib\site-packages\django\core\management\base.py”, line 472, in check
raise SystemCheckError(msg)
django.core.management.base.SystemCheckError: SystemCheckError: System check identified some issues:

ERRORS:

article.GodownentryReturn.supplier: (fields.E304) Reverse accessor for ‘GodownentryReturn.supplier' clashes with reverse accessor for ‘GodownentryReturn.supplier'.

HINT: Add or change a related_name argument to the definition for ‘GodownentryReturn.supplier' or ‘GodownentryReturn.supplier'.

part.GodownentryReturn.supplier: (fields.E304) Reverse accessor for ‘GodownentryReturn.supplier' clashes with reverse accessor for ‘GodownentryReturn.supplier'.

HINT: Add or change a related_name argument to the definition for ‘GodownentryReturn.supplier' or ‘GodownentryReturn.supplier'.

原因:

因为在一个表中多次引用某个外键表,而且没有指定唯一的releated_name,而导致的。

解决方案:

将同一个表中外键,增加不同的releated_name。

以上这篇Django中ORM找出内容不为空的数据实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。

展开全文
上一篇:Django --Xadmin 判断登录者身份实例
下一篇:Django中FilePathField字段的用法
输入字:
相关知识
django学习之ajax post传参的2种格式实例

AJAX除了异步的特点外,还有一个就是:浏览器页面局部刷新,下面这篇文章主要给大家介绍了关于django学习之ajax post传参的2种格式的相关资料,需要的朋友可以参考下

Python djanjo之csrf防跨站攻击实验过程

csrf攻击,即cross site request forgery跨站(域名)请求伪造,这里的forgery就是伪造的意思。这篇文章主要给大家介绍了关于Python djanjo之csrf防跨站攻击的相关资料,需要的朋友可以参考下

django admin实现动态多选框表单的示例代码

借助django-admin,可以快速得到CRUD界面,但若需要创建多选标签字段时,需要对表单进行调整,本文通过示例代码给大家介绍django admin多选框表单的实现方法,感兴趣的朋友跟随小编一起看看吧

Flask登录注册项目的简单实现

一个简单的用户注册和登录的页面,涉及到验证,数据库存储等等,本文主要介绍了Flask登录注册项目的简单实现,从目录结构开始,感兴趣的可以了解一下