我不小心删除了django_admin_log,现在我无法使用django admin

时间:2016-12-12 05:56:48

标签: python django django-admin

我收到此错误

  

"在/ admin /编程错误   关系" django_admin_log"不存在   第1行:..."。" app_label"," django_content_type"。" model"来自" django_ad ..."

数据库中不存在

django_admin_log表。有谁知道我怎么能创造它?我并不担心删除我的应用程序的数据。

当我尝试' ./ manage.py sqlmigrate admin 0001'或者' ./ manage.py sqlmigrate admin 0001'

我明白了 "

BEGIN;

- 创建模型LogEntry

CREATE TABLE" django_admin_log" (" id" serial NOT NULL PRIMARY KEY," action_time" timestamp with time zone NOT NULL," object_id" text NULL," object_repr" varchar (200)NOT NULL," action_flag" smallint NOT NULL CHECK(" action_flag"> = 0)," change_message" text NOT NULL," content_type_id& #34;整数NULL," user_id"整数NOT NULL); ALTER TABLE" django_admin_log" ADD CONSTRAINT" django_admin_content_type_id_c4bce8eb_fk_django_content_type_id" FOREIGN KEY(" content_type_id")REFERENCES" django_content_type" (" id")可伸缩的最小值; ALTER TABLE" django_admin_log" ADD CONSTRAINT" django_admin_log_user_id_c564eba6_fk_auth_user_id" FOREIGN KEY(" user_id")REFERENCES" auth_user" (" id")可伸缩的最小值; CREATE INDEX" django_admin_log_417f1b1c" ON" django_admin_log" (" content_type_id&#34); CREATE INDEX" django_admin_log_e8701ad4" ON" django_admin_log" (" USER_ID&#34); COMMIT;"

但我仍然得到同样的错误?如果有人关心,我会使用postgresql。

3 个答案:

答案 0 :(得分:2)

遇到同样的问题,最好的方法是复制CREATE TABLE日志,登录到数据库./manage.py dbshel​​l并将内容粘贴到那里,而无需添加最后一行(COMMIT),它将解决此问题并手动进行为您创建表。

答案 1 :(得分:0)

为了从头开始为Django 1.7创建表> :

./manage.py sqlmigrate admin 0001

答案 2 :(得分:0)

./manage.py sqlmigrate admin 0001之后,请运行python manage.py migrate