python3.6下如何用Django1.9创建数据库报错

python3.6下如何用Django1.9创建数据库报错,第1张

错误描述

python==3.5

django==1.7

django创建项目时报错如下:

Traceback (most recent call last):

File "/root/envs/django-test/bin/django-admin", line 11, in <module>

sys.exit(execute_from_command_line())

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line

utility.execute()

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/management/__init__.py", line 354, in execute

django.setup()

File "/root/envs/django-test/lib/python3.5/site-packages/django/__init__.py", line 18, in setup

from django.utils.log import configure_logging

File "/root/envs/django-test/lib/python3.5/site-packages/django/utils/log.py", line 10, in <module>

from django.views.debug import ExceptionReporter, get_exception_reporter_filter

File "/root/envs/django-test/lib/python3.5/site-packages/django/views/debug.py", line 10, in <module>

from django.http import (HttpResponse, HttpResponseServerError,

File "/root/envs/django-test/lib/python3.5/site-packages/django/http/__init__.py", line 4, in <module>

from django.http.response import (HttpResponse, StreamingHttpResponse,

File "/root/envs/django-test/lib/python3.5/site-packages/django/http/response.py", line 13, in <module>

from django.core.serializers.json import DjangoJSONEncoder

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/serializers/__init__.py", line 23, in <module>

from django.core.serializers.base import SerializerDoesNotExist

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/serializers/base.py", line 6, in <module>

from django.db import models

File "/root/envs/django-test/lib/python3.5/site-packages/django/db/models/__init__.py", line 6, in <module>

from django.db.models.query import Q, QuerySet, Prefetch # NOQA

File "/root/envs/django-test/lib/python3.5/site-packages/django/db/models/query.py", line 13, in <module>

from django.db.models.fields import AutoField, Empty

File "/root/envs/django-test/lib/python3.5/site-packages/django/db/models/fields/__init__.py", line 18, in <module>

from django import forms

File "/root/envs/django-test/lib/python3.5/site-packages/django/forms/__init__.py", line 6, in <module>

from django.forms.fields import * # NOQA

File "/root/envs/django-test/lib/python3.5/site-packages/django/forms/fields.py", line 18, in <module>

from django.forms.utils import from_current_timezone, to_current_timezone

File "/root/envs/django-test/lib/python3.5/site-packages/django/forms/utils.py", line 15, in <module>

from django.utils.html import format_html, format_html_join, escape

File "/root/envs/django-test/lib/python3.5/site-packages/django/utils/html.py", line 16, in <module>

from .html_parser import HTMLParser, HTMLParseError

File "/root/envs/django-test/lib/python3.5/site-packages/django/utils/html_parser.py", line 12, in <module>

HTMLParseError = _html_parser.HTMLParseError

AttributeError: module 'html.parser' has no attribute 'HTMLParseError'

(django-test) root@localhost:~/source/djangotest# django-admin startproject superlists

Traceback (most recent call last):

File "/root/envs/django-test/bin/django-admin", line 11, in <module>

sys.exit(execute_from_command_line())

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line

utility.execute()

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/management/__init__.py", line 354, in execute

django.setup()

File "/root/envs/django-test/lib/python3.5/site-packages/django/__init__.py", line 18, in setup

from django.utils.log import configure_logging

File "/root/envs/django-test/lib/python3.5/site-packages/django/utils/log.py", line 10, in <module>

from django.views.debug import ExceptionReporter, get_exception_reporter_filter

File "/root/envs/django-test/lib/python3.5/site-packages/django/views/debug.py", line 10, in <module>

from django.http import (HttpResponse, HttpResponseServerError,

File "/root/envs/django-test/lib/python3.5/site-packages/django/http/__init__.py", line 4, in <module>

from django.http.response import (HttpResponse, StreamingHttpResponse,

File "/root/envs/django-test/lib/python3.5/site-packages/django/http/response.py", line 13, in <module>

from django.core.serializers.json import DjangoJSONEncoder

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/serializers/__init__.py", line 23, in <module>

from django.core.serializers.base import SerializerDoesNotExist

File "/root/envs/django-test/lib/python3.5/site-packages/django/core/serializers/base.py", line 6, in <module>

from django.db import models

File "/root/envs/django-test/lib/python3.5/site-packages/django/db/models/__init__.py", line 6, in <module>

from django.db.models.query import Q, QuerySet, Prefetch # NOQA

File "/root/envs/django-test/lib/python3.5/site-packages/django/db/models/query.py", line 13, in <module>

from django.db.models.fields import AutoField, Empty

File "/root/envs/django-test/lib/python3.5/site-packages/django/db/models/fields/__init__.py", line 18, in <module>

from django import forms

File "/root/envs/django-test/lib/python3.5/site-packages/django/forms/__init__.py", line 6, in <module>

from django.forms.fields import * # NOQA

File "/root/envs/django-test/lib/python3.5/site-packages/django/forms/fields.py", line 18, in <module>

from django.forms.utils import from_current_timezone, to_current_timezone

File "/root/envs/django-test/lib/python3.5/site-packages/django/forms/utils.py", line 15, in <module>

from django.utils.html import format_html, format_html_join, escape

File "/root/envs/django-test/lib/python3.5/site-packages/django/utils/html.py", line 16, in <module>

from .html_parser import HTMLParser, HTMLParseError

File "/root/envs/django-test/lib/python3.5/site-packages/django/utils/html_parser.py", line 12, in <module>

HTMLParseError = _html_parser.HTMLParseError

AttributeError: module 'html.parser' has no attribute 'HTMLParseError'12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576771234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677

原因

HTMLParseError在pythons3.5已经没有了

解决方法

将python版本回退到3.3或3.4

升级django版本

django创建数据库表方法如下:

catcher:mysite catcher$ python manage.py makemigrations books

Migrations for 'books':

  0001_initial.py:

    - Create model Author

    - Create model Book

    - Create model Publisher

    - Add field publisher to book

catcher:mysite catcher$ python manage.py sqlmigrate books 0001

BEGIN

--

-- Create model Author

--

CREATE TABLE "books_author" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "first_name" varchar(30) NOT NULL, "last_name" varchar(40) NOT NULL, "email" varchar(254) NOT NULL)

--

-- Create model Book

--

CREATE TABLE "books_book" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "title" varchar(100) NOT NULL, "publication_date" date NOT NULL)

CREATE TABLE "books_book_authors" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "book_id" integer NOT NULL REFERENCES "books_book" ("id"), "author_id" integer NOT NULL REFERENCES "books_author" ("id"))

--

-- Create model Publisher

--

CREATE TABLE "books_publisher" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "name" varchar(30) NOT NULL, "address" varchar(50) NOT NULL, "city" varchar(60) NOT NULL, "state_province" varchar(30) NOT NULL, "country" varchar(50) NOT NULL, "website" varchar(200) NOT NULL)

--

-- Add field publisher to book

--

ALTER TABLE "books_book" RENAME TO "books_book__old"

CREATE TABLE "books_book" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "title" varchar(100) NOT NULL, "publication_date" date NOT NULL, "publisher_id" integer NOT NULL REFERENCES "books_publisher" ("id"))

INSERT INTO "books_book" ("publication_date", "publisher_id", "id", "title") SELECT "publication_date", NULL, "id", "title" FROM "books_book__old"

DROP TABLE "books_book__old"

CREATE INDEX "books_book_2604cbea" ON "books_book" ("publisher_id")

 

COMMIT

catcher:mysite catcher$

   

 

catcher:mysite catcher$ sudo python manage.py migratePassword:Operations to perform:  Apply all migrations: admin, contenttypes, books, auth, sessionsRunning migrations:  Rendering model states... DONE  Applying contenttypes.0001_initial... OK  Applying auth.0001_initial... OK  Applying admin.0001_initial... OK  Applying admin.0002_logentry_remove_auto_add... OK  Applying contenttypes.0002_remove_content_type_name... OK  Applying auth.0002_alter_permission_name_max_length... OK  Applying auth.0003_alter_user_email_max_length... OK  Applying auth.0004_alter_user_username_opts... OK  Applying auth.0005_alter_user_last_login_null... OK  Applying auth.0006_require_contenttypes_0002... OK  Applying auth.0007_alter_validators_add_error_messages... OK  Applying books.0001_initial... OK  Applying sessions.0001_initial... OKcatcher:mysite catcher$

创建数据库

选择开始菜单中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打开【SQL Server Management Studio】窗口,并使用Windows或 SQL Server身份验证建立连接。

在【对象资源管理器】窗口中展开服务器,然后选择【数据库】节点

右键单击【数据库】节点,从d出来的快捷菜单中选择【新建数据库】命令。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6848529.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-29
下一篇 2023-03-29

发表评论

登录后才能评论

评论列表(0条)

保存