用于巩固自己所学知识点
1、(单选题)您的数据库中有一个 部门表Department 和一个 员工表Employee 。您需要确保一名员工只能被分配到一个现有部门,应对 Employee 表应用何种内容?
A.主键
B.唯一约束
C.索引
D.外键
2、(单选题)下列关于HttpRequest 中的主要内容说法错误的是?
A.request.scheme : 请求数据
B.request.body 请求主体
C.request.path 请求路径
D.request.method 请求方法
3、(单选题)下列关于cookies说法错误的是?
A.cookies是一种数据存储技术
B.cookies是将一段文本保存在服务器的一种技术
C.用于保存登录信息
D.用于保存用户的搜索关键词
4、(单选题)下列关于django项目中,配置文件说法错误的是?
A.__init__.py 项目初始化文件,每当服务器启动的时候,会自动执行
B.urls.py 项目的基础url(路由)配置文件
C.wsgi.py 配置应用服务器的文件
D.settings.py 项目初始化文件,每当服务器启动的时候,会自动执行
正确答案以及答案解析请关注微信公众号【全栈记事】回复 621获得!!!
5、(单选题)假设有以下ORM模型:
from django.db import models
class Student(models.Model):
"""学生表"""
name = models.CharField(max_length=100)
gender = models.SmallIntegerField()
class Meta:
db_table = 'student'
class Course(models.Model):
"""课程表"""
name = models.CharField(max_length=100)
teacher = models.ForeignKey("Teacher",on_delete=models.SET_NULL,null=True)
class Meta:
db_table = 'course'
class Score(models.Model):
"""分数表"""
student = models.ForeignKey("Student",on_delete=models.CASCADE)
course = models.ForeignKey("Course",on_delete=models.CASCADE)
number = models.FloatField()
class Meta:
db_table = 'score'
查询所有同学的id、姓名、选课的数量、总成绩;
A.rows = Student.objects.annotate(course_nums=Sum("score__course"),total_score=Count("score__number")).values("id","name","course_nums","total_score")for row in rows: print(row)
B.rows = Student.objects.annotate(course_nums=Count("score__course"),total_score=Sum("score__number")).values("id","name","course_nums","total_score")for row in rows: print(row)
C.rows = Student.objects.annotate(course_nums=Count("score__course"),total_score=Count("score__number")).values("id","name","course_nums","total_score")for row in rows: print(row)
D.rows = Student.objects.annotate(course_nums=Sum("score__course"),total_score=Sum("score__number")).values("id","name","course_nums","total_score")for row in rows: print(row)
6、(单选题)下列关于sessions说法错误的是?
A.session(会话),实际上就是服务器为每个浏览器临时开辟的一段空间,用于保存 相关的请求信息
B.session也是为了存放数据而存在的,通常会把服务器端要用到的数据保存进 session
C.session 一般存放在客户的浏览器上
D.随着越来越多用户登录,session 所需要的服务器内存量也会不断增加。
7、(单选题)我想启动我创建的django项目pro,应该输入下面哪个命令?
A.python manage.py runserver
B.python manage.py startproject
C.python settings.py runserver
D.python settings.py startproject
8、(单选题)下列关于mvc说法错误的是?
A.M :Models,模型层 应用程序中处理显示的部分内容
B.V :Views , 视图层 应用程序中处理显示的部分内容
C.C :Controllers , 控制器 处理用户交互的部分,通常负责从模型中取出数据,再进行业务的处理,最后将数据给视图,并将视图给客户端
D.M :Models,模型层 在程序中主要处理数据,负责在数据库中对数据进 行存取操作(CRUD)
9、(单选题)MVC和MTV的对应关系正确的是?
A.M --- MV --- TC --- V
B.M --- VV --- TC --- M
C.M --- MV --- VC --- T
D.M --- MV --- VC --- V
10、(单选题)我想用django创建一个叫pro的项目,应该用哪个命令?
A.django-admin startproject pro
B.django-admin pro
C.pro django-admin
D.pro django-admin startproject
11、(单选题)关于Django的url()语法,url(regex,views,kwargs=None,name=None),说法错误的是()
A.regex :匹配请求地址的正则表达式
B.views :待处理的视图函数(views.py定义)
C.kwargs :字典,传递给视图的参数
D.name :定义名称,在模板中,不允许通过名称找到url()
12、(单选题)我想在我的django项目中创建一个叫 myapp的 应用,应该输入下面哪个语句?
A.python manage.py startapp myapp
B.python manage.py startproject myapp
C.python manage.py myapp startapp
D.python manage.py myapp startproject
13、(单选题)我要用forms创建一个subject属性,对应生成一个文本框,控件前提示的文本为'标题',应该如何写?
A.subject = forms.CharField(title='标题')
B.subject = forms.Form.CharField(title='标题')
C.subject = forms.TextField(label='标题')
D.subject = forms.CharField(label='标题')
14、(单选题)我现在要建立两张表,一张book和一张author 表,一个书可能有多个作者,一个作者也可以写很多书,那我应该如何在models里面创建模型?
A.models.OneToOneField
B.models.OneToManyField
C.models.ManyToManyField
D.models..ForeignKey
15、(单选题)假设有以下ORM模型
from django.db import models
class Student(models.Model):
"""学生表"""
name = models.CharField(max_length=100)
gender = models.SmallIntegerField()
class Meta:
db_table = 'student'
class Score(models.Model):
"""分数表"""
student = models.ForeignKey("Student",on_delete=models.CASCADE)
course = models.ForeignKey("Course",on_delete=models.CASCADE)
number = models.FloatField()
class Meta:
db_table = 'score'
查询平均成绩大于等于60分的同学的id和平均成绩
A.rows = Student.objects.annotate(avg=Avg("score__number")).filter(avg__gte=60).values("id","avg")for row in rows: print(row)
B.rows = Student.objects.annotate(avg=Avg("score__number")).filter(avg__lte=60).values("id","avg")for row in rows: print(row)
C.rows = Student.objects.annotate(avg=Avg("score__number")).filter(avg__exact=60).values("id","avg")for row in rows: print(row)
D.rows = Student.objects.annotate(avg=Avg("score__number")).filter(avg__gt=60).values("id","avg")for row in rows: print(row)
16、(单选题)下列关于django高级后台管理说法错误的是?
A.list_display 在显示实体信息的页面上,都显示哪些字段
B.list_display_links定义能够链接到具体实体页面的链接
C.list_editable定义在列表页面中允许被修改的字段
D.search_fields在列表的右侧增加过滤器,实现快速筛选
17、(单选题)下列关于HttpRequest说法错误的是?
A.request.get_host() 请求的主机地址 / 域名
B.request.GET get的请求数据
C.request.META 请求方法
D.request.COOKIES cookies的数据
18、(多选题)关于ORM的优点,下列说法正确的是?
A.隐藏了数据访问细节,使通用数据库交互变得简单易行。
B.ORM 避免了不规范、冗余、风格不统一的 SQL 语句,可以避免很多人为的 bug,方便编码风格的统一和后期维护。
C.将数据库表和对象模型关联,我们只需针对相关的对象模型进行编码,无须考虑对象模型和数据库表之间的转化,大大提高了程序的开发效率。
D.在处理多表联查、where 条件复杂的查询时,ORM 可能会生成的高效率的 SQL
19、(多选题)下列描述torando和Django区别正确的选项为()
A.Django是走大而全的方向,注重的是高效开发,它最出名的是其全自动化的管理后台Tornado走的是少而精的方向,注重的是性能优越,它最出名的是异步非阻塞的设计方式
B.Tornado实现了异步机制,Django没有
C.Django适合初学者或者小团队,Tornado适合高度定制
D.以上说法均不正确
20、(多选题)下列关于模板说法正确的是()
A.{{}}双大括号,内容可以是任何的python表达式(变量常见)
B.{%%}模板中的控制语句放在{%%}中
C.模板中可以使用for语句
D.以上说法均不正确
21、(多选题)关于Django中的F和Q函数,说法正确的是()
A.F函数用于在执行中获取某列的值
B.F函数允许Django在未实际链接数据的情况下具有对数据库字段的值的引用,不用获取对象放在内存中再对字段进行操作,直接执行原生产sql语句操作
C.Q函数用于对对象进行复杂查询,并支持&(and),|(or),~(not)操作符
D.Q函数不支持支持&(and),|(or),~(not)操作符
22、(多选题)class scrapy.http.Request(url[, callback, method='GET', headers, body, cookies, meta,encoding='utf-8', priority=0, dont_filter=False, errback])如上所示,一个Request对象的参数分别对应什么()
A.url:此请求的网址
B.cookies: 请求cookie
C.encoding: 此请求的编码(默认为'utf-8')。此编码将用于对URL进行百分比编码,并将正文转换为str(如果给定unicode)
D.callback:将使用此请求的响应(一旦下载)作为其第一个参数调用的函数。如果请求没有指定回调,parse()将使用spider的 方法。请注意,如果在处理期间引发异常,则会调用errback。
23、(多选题)关于django对数据查询结果排序,错误的是()
A.排序使用order_by(),默认升序
B.排序使用order_by(),默认降序
C.降序需要在排序字段名前加-
D.升序序需要在排序字段名前加-
24、(多选题)下列关于模板说法正确的是()
A.模板可以继承
B.{% extends "main.html" %}将以上语句放在新模板的顶部,即可继承该模板的所有标记
C.模板可以嵌套
D.有时候我们在继承父模板的同时,还需要对父模板的部分信息进行替换,这时就用到了{% block name %}{% end %}语法
25、(多选题)下列是MySQL索引类型的是()
A.index
B.unique
C.primary key
D.foreign key
26、(多选题)Ajax是()
A.一种创建交互式网页应用的网页开发技术
B.一种用于创建快速动态网页的技术
C. 一种创建交互式网页应用的网页开源技术
D.一种用于创建动态网页的技术
27、(多选题)关于Django 模板的设置,说法正确的是()
A.BACKEND:指定模板的搜索引擎,不用改动
B.DIRS:指定模板所存放的目录
C.如果DIRS中为空的话,那么Django会自动所有每个应用中的 templates 的文件夹作为模板管理目录
D.APP_DIRS:True:首先从DIRS中指定的文件夹中查找模板,如果没找到指定模板的话,则再搜索templates目录
28、(多选题)下述代码的输出结果是什么?kv = {'k': 'v', 'x': 'y'} r = requests.request('GET', 'https://www.python87.com/ws', params=kv) print(r.url)
A.https://www.python87.com/ws?k=v&x=y
B.https://www.python87.com/ws?x=y&k=v
C.https://www.python87.com/ws?v&y
D.https://www.python87.com/ws?k&x
29、(多选题)下列属于ajax应用场景的是()
A.验证注册名是否已使用
B.网站页面局部登陆和退出
C.文本框自动补全功能
D.地图拖动、放大、缩小功能
30、(多选题)Django提供的数据字段有()
A.BooleanField
B.CharField
C.FileField
D.ComplexField
31、(多选题)在MySQL数据库中,主键约束与唯一约束的区别有()
A.主键列的数据类型不限,但此列必须是唯一并且非空
B.一张数据表只能有一个主键
C.唯一性约束所在的列允许空值
D.数据表可以包含有多个唯一约束
32、(多选题)MySQL常见的数据种类有哪些()
A.数值型
B.字符型
C.枚举型
D.日期时间型