2020
09-24
09-24
Django 拼接两个queryset 或是两个不可以相加的对象实例
1、使用|直接将两个queryset拼接起来querysets=one_queryset|two_queryset2、使用chain拼接importitertoolsquerysets=itertools.chain(one_queryset,two_queryset)补充知识:djangoqueryset相加和筛选1、集合相加a={1,2,3}b={3,4,5}print(type(a))print(a|b)2、queryset符合条件的筛序projects=Project_models.objects.filter(user=request.user).order_by('id')projects=projects.filter(bad_numbers__gt=0).o...
继续阅读 >
Django中想要把模型类聚合得到想要的数据可以用F对象。比如有模型类A和B,A和B之间有外键关联在一起,A是子表,B是父表(反过来没试过。。因为大部分数据都是用子表的,我想是可以的),那么可以这样查:A.objects.filter(userid=3,bookid=F(bid))其中userid,bookid是模型类A的字段,bid是模型类B的字段。这样操作的结果就是可以查询到userid为3且模型类A字段bookid等于模型类B字段bid的集合数据了。F对象是可以比较两个关联模型...
在项目中我们每个app对应不同的数据库,其中有一个是从数据库逆向生成model,做个笔记。1、修改项目的setting.py配置:DATABASES={'default':{'ENGINE':'django.db.backends.mysql',#默认用mysql'NAME':'bk',#数据库名(默认与APP_ID相同)'USER':'root',#你的数据库user'PASSWORD':'root',#你的数据库password'HOST':'xxx.xxx.xxx.xxx',#开发的时候,使用localhost'PORT':'33...
项目结构如下:开始时在setting.py中设置如下;html文件中的写法如下:这样设置一直无法加载静态文件,只需要修改setting.py文件如下:就可以加载到静态文件了。补充知识:Django-项目上线后,静态文件配置失效以及404、500页面的全局配置一.项目上线后静态文件失效1.因为项目还没上线的时候,django会默认从setting.py中这个设置STATIC_URL='/static/'STATICFILES_DIRS=(os.path.join(BASE_DIR,'static'),)使静态文件生效2....
django接口可以通过localhost或者127.0.0.1进行访问,但无法通过本机ip地址访问1.修改django项目中的settings.py文件ALLOWED_HOSTS="*"2.cmd窗口运行命令启动pythonmanage.pyrunserver0.0.0.0:80803.pycharm中启动修改Run/DebugConfigurations中的Host为0.0.0.0补充知识:Django允许外部ip访问1、关闭防火墙serviceiptablesstop2、设置django开启django时,使用0.0.0.0:xxxx,作为ip和端口例如:pythonmanage.pyrunser...
首先,我们看看models.py里的模型,有个upload_to参数,为了和过去一刀两断,楼主决定给upload_to赋值一个新的值叫avatar/,这个参数的意思是把文件上传到MEDIA_ROOT/avatar/下面。既然这里upload_to的值是连接在MEDIA_ROOT/路径后的一部分,所以很自然的只能写成avatar/或者./avatar/,而不能写成/avatar/,楼主已经以身试法过。还有一点,这里提到了MEDIA_ROOT,可是我们一直没设置过啊。headImg=models.FileField(upload_to='...