您的位置:首页 > 编程语言 > Python开发

Python3 之 Django Web框架优化查询和Form组件(一)

2017-11-03 16:08 716 查看

数据库优化查询:

only和difer:

only(只查询参数字段):
models.类名.objects.all().only('字段名')
difer(除了参数字段外都查询出来):
models.类名.objects.all().difer('字段名')


反向生成URL的两种方式:

无名分组:/index/(\d+) name='index'
1.{% url 'index' 10 %}
2.reverse('index',args=(10,))
有名分组:/index/(?P<page>\d+) name='index'
1.{% url 'index' page=10 %}
2.reverse('index',kwargs={'page':10})


数据库表设计:

1.属性相同的尽可能归类到一张表中;
2.联表查询的时候有性能损耗,可以的话就把一些不变的量放在choices中,利用内存存放,不需要联表查询,形如:
user_type_choices = ((1,'老师'),
(2,'助教'),
(3,'班主任'),
)
user_type = models.类名.objects.filter(choices=user_type_choices)
如果要获取user_type:get_user_type_display()


Form组件:

模板加载静态文件:
{% load staticfiles %}
<img src="{% static 'images/im1.png' %}"/>
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息