Django学习中的问题

1、
Django学习中的问题_第1张图片
event = models.ForeignKey(Event,on_delete=models.CASCADE)
关联主键的时候需要配置on_delete字段,并添加默认值

2、执行命令CREATE DATABASE guest CHARACTER SET utf8;创建数据库时提示:
ERROR 1044 (42000): Access denied for user ‘test’@‘localhost’ to database ‘guest’
解决方法:
(1)、管理员身份打开cmd窗口(开始菜单搜索命令提示符-右键-以管理员身份运行);
(2)、输入 mysql -hlocalhost -uroot -p
-h表示服务器名,localhost表示本地;-u为数据库用户名,root是mysql默认用户名;-p为密码,如果设置了密码,可直接在-p后链接输入,如:-p123456,若用户没有设置密码,显示Enter password时,直接回车即可。(我没有设置密码,直接回车的)
如果提示:在MySQL登录时出现Access denied for user ‘root’@‘localhost’ (using password: YES)
可能是密码错误
(3)、再次执行CREATE DATABASE guest CHARACTER SET utf8;即可创建成功。
3、url.py中传参失败的问题:
Django2.0之后的版本,传入参数时要使用re_path
例如:不带参数:path(‘search_phone/’,views.search_phone),
带参数: re_path(‘sign_index/(?P[0-9]+)/’, views.sign_index),
(?Ppattern)是参数传递格式,详细说明:
https://docs.python.org/2/library/re.html#regular-expression-syntax
4、Django Shell 模式下模拟客户端测试,报错:
Invalid HTTP_HOST header: ‘testserver’. You may need to add ‘testserver’ to ALLOWED_HOSTS.
Django学习中的问题_第2张图片
解决方案:在settings.py中ALLOWED_HOSTS = []改为ALLOWED_HOSTS = [’*’],安全点的话可以配成类似这种的ALLOWED_HOSTS = [‘198.211.99.20’, ‘localhost’, ‘127.0.0.1’]
5、views.py文件报错:
D:\pydj\guest\sign\views.py:58: UnorderedObjectListWarning: Pagination may yield inconsistent results with an unordered object_list: odels.Guest’> QuerySet.
在这里插入图片描述
解决方法:分页查询时加上order_by()
例如:将guest_list = Guest.objects.all()改成guest_list = Guest.objects.all().order_by(‘id’)

你可能感兴趣的:(个人学习记录)