django 报错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django 报错相关的知识,希望对你有一定的参考价值。
TemplateDoesNotExist at /blog/index/blog/index.htmlRequest Method: GETRequest URL: http://127.0.0.1:8000/blog/index/Django Version: 1.11.4Exception Type: TemplateDoesNotExistException Value: blog/index.htmlException Location: /home/li/.local/lib/python2.7/site-packages/django/template/loader.py in get_template, line 25Python Executable: /usr/bin/pythonPython Version: 2.7.12Python Path: ['/home/li/django/myblong', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/home/li/.local/lib/python2.7/site-packages', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/python2.7/dist-packages/ubuntu-kylin-sso-client']Server time: Fri, 15 Sep 2017 12:12:51 +0000Template-loader postmortemDjango tried loading these templates, in this order:Using engine django: django.template.loaders.app_directories.Loader: /home/li/.local/lib/python2.7/site-packages/django/contrib/admin/templates/blog/index.html (Source does not exist) django.template.loaders.app_directories.Loader: /home/li/.local/lib/python2.7/site-packages/django/contrib/auth/templates/blog/index.html (Source does not exist) django.template.loaders.app_directories.Loader: /home/li/django/myblong/blog/templates/blog/index.html (Source does not exist)
参考技术A 这个无法直接运行的,后面是需要跟参数的,你的截图里有提示,比如创建一个djiango项目可以:django-admin.py startproject hellow 参考技术B 不要自己用id字段,会和django本身的命名有冲突,可以用fid等其他字段名代替追问
解决了 ,我疏忽了一个小问题,555555,把教程再看了一遍,仔细度了一遍,,,感觉好心酸
参考技术C 朋友你怎么解决的啊??求解啊解决报错:Django框架数据库迁移出现报错:django.db.migrations.exceptions.InconsistentMigrationHistory(图文并茂)
报错信息
- 我们有时在django框架中进行数据库迁移,会出现下述报错,导致数据库迁移失败:
Traceback (most recent call last):
File "manage.py", line 21, in <module>
main()
File "manage.py", line 17, in main
execute_from_command_line(sys.argv)
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\core\\management\\__init__.py", line 381, in execute_from_command_line
utility.execute()
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\core\\management\\__init__.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\core\\management\\base.py", line 323, in run_from_argv
self.execute(*args, **cmd_options)
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\core\\management\\base.py", line 364, in execute
output = self.handle(*args, **options)
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\core\\management\\base.py", line 83, in wrapped
res = handle_func(*args, **kwargs)
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\core\\management\\commands\\makemigrations.py", line 101, in handle
loader.check_consistent_history(connection)
File "E:\\virtualenv\\djangoFrame-V3Y6g1nz\\lib\\site-packages\\django\\db\\migrations\\loader.py", line 299, in check_consistent_history
connection.alias,
django.db.migrations.exceptions.InconsistentMigrationHistory: Migration user.0002_user_create_time is applied before its dependency user.0001_initial on database 'default'.
问题分析
- 首先我们需要了解django数据库迁移时,发生的操作:
- ①
python manage.py makemigrations
:根据我们自定义的模型生成对应的迁移脚本 - ②
python manage.py migrate
:发生了两步操作:一:将迁移脚本转换成sql语句,然后再去数据库中执行转换后的sql语句。二:如果转换后的sql语句没有错误,则会此条迁移记录保存到数据库中的django_migrations表中
- 出现上述错误的原因就是:
数据库django_migrations表中保存的迁移版本与django项目目录下的迁移版本不一致
解决报错
-
首先找到数据库表中的版本与项目目录下的哪个版本不一致,确定版本不一致的app,解决问题的第一步就完成了
-
详细的解决报错的步骤:
-
①:
将数据django_migrations表下的有关找到的不一致的app的迁移记录全部删除
-
②:
删除django项目目录下user app的migrations目录的全部迁移脚本
-
③:
将django项目的user app的模型修改的与数据库表中保存的字段属性相同!!!
-
④:
使用迁移命令生成对应app的迁移脚本:python manage.py makemigrations user
-
出现上述情况即为生成对应的迁移脚本成功!!
-
⑤:
使用命令将初始化的脚本标记为已经映射,然后再次修改django项目下的app模型文件就不会发生报错!!!
-
出现上述信息即为完美解决此报错!!!然后你就可以修改django项目下的模型,再次生成迁移脚本,执行迁移命令时就不会出现上述的报错了!!
以上是关于django 报错的主要内容,如果未能解决你的问题,请参考以下文章
python---补充django中文报错,Django3.5出错
解决报错:Django框架数据库迁移出现报错:django.db.migrations.exceptions.InconsistentMigrationHistory(图文并茂)