[英]I was making an app and i am getting the unexpected indent error, which I am unable to resolve, how do i remove it?
[英]How do I resolve this? I am trying to run my django app and am getting this error
myapp.AuthPermission.content_type: (fields.E300) 字段定義了與 model 'DjangoContentType' 的關系,它要么未安裝,要么是抽象的。
myapp.AuthPermission.content_type: (fields.E307) 字段 myapp.AuthPermission.content_type 是用對“myapp.djangocontenttype”的惰性引用聲明的,但應用程序“myapp”不提供 model“djangocontenttype”。
我的 model.py
從 django.db 導入模型
class AuthGroup(models.Model):
name = models.CharField(unique=True, max_length=150)
class Meta:
managed = False
db_table = 'auth_group'
class AuthGroupPermissions(models.Model):
group = models.ForeignKey(AuthGroup, models.DO_NOTHING)
permission = models.ForeignKey('AuthPermission', models.DO_NOTHING)
class Meta:
managed = False
db_table = 'auth_group_permissions'
unique_together = (('group', 'permission'),)
class AuthPermission(models.Model):
name = models.CharField(max_length=255)
content_type = models.ForeignKey('DjangoContentType', models.DO_NOTHING)
codename = models.CharField(max_length=100)
class Meta:
managed = False
db_table = 'auth_permission'
unique_together = (('content_type', 'codename'),)
class BackgroundTask(models.Model):
task_name = models.CharField(max_length=190)
task_params = models.TextField()
task_hash = models.CharField(max_length=40)
verbose_name = models.CharField(max_length=255, blank=True, null=True)
priority = models.IntegerField()
run_at = models.DateTimeField()
repeat = models.BigIntegerField()
repeat_until = models.DateTimeField(blank=True, null=True)
queue = models.CharField(max_length=190, blank=True, null=True)
attempts = models.IntegerField()
failed_at = models.DateTimeField(blank=True, null=True)
last_error = models.TextField()
locked_by = models.CharField(max_length=64, blank=True, null=True)
locked_at = models.DateTimeField(blank=True, null=True)
creator_object_id = models.IntegerField(blank=True, null=True)
creator_content_type = models.ForeignKey('DjangoContentType', models.DO_NOTHING, blank=True, null=True)
class Meta:
managed = False
db_table = 'background_task'
class BackgroundTaskCompletedtask(models.Model):
task_name = models.CharField(max_length=190)
task_params = models.TextField()
task_hash = models.CharField(max_length=40)
verbose_name = models.CharField(max_length=255, blank=True, null=True)
priority = models.IntegerField()
run_at = models.DateTimeField()
repeat = models.BigIntegerField()
repeat_until = models.DateTimeField(blank=True, null=True)
queue = models.CharField(max_length=190, blank=True, null=True)
attempts = models.IntegerField()
failed_at = models.DateTimeField(blank=True, null=True)
last_error = models.TextField()
locked_by = models.CharField(max_length=64, blank=True, null=True)
locked_at = models.DateTimeField(blank=True, null=True)
creator_object_id = models.IntegerField(blank=True, null=True)
creator_content_type = models.ForeignKey('DjangoContentType', models.DO_NOTHING, blank=True, null=True)
class Meta:
managed = False
db_table = 'background_task_completedtask'
class DjangoAdminLog(models.Model):
action_time = models.DateTimeField()
object_id = models.TextField(blank=True, null=True)
object_repr = models.CharField(max_length=200)
action_flag = models.SmallIntegerField()
change_message = models.TextField()
content_type = models.ForeignKey('DjangoContentType', models.DO_NOTHING, blank=True, null=True)
user = models.ForeignKey('MyappUser', models.DO_NOTHING)
class Meta:
managed = False
db_table = 'django_admin_log'
class DjangoCeleryBeatClockedschedule(models.Model):
clocked_time = models.DateTimeField()
class Meta:
managed = False
db_table = 'django_celery_beat_clockedschedule'
class DjangoCeleryBeatCrontabschedule(models.Model):
minute = models.CharField(max_length=240)
hour = models.CharField(max_length=96)
day_of_week = models.CharField(max_length=64)
day_of_month = models.CharField(max_length=124)
month_of_year = models.CharField(max_length=64)
timezone = models.CharField(max_length=63)
class Meta:
managed = False
db_table = 'django_celery_beat_crontabschedule'
class DjangoCeleryBeatIntervalschedule(models.Model):
every = models.IntegerField()
period = models.CharField(max_length=24)
class Meta:
managed = False
db_table = 'django_celery_beat_intervalschedule'
class DjangoCeleryBeatPeriodictask(models.Model):
name = models.CharField(unique=True, max_length=200)
task = models.CharField(max_length=200)
args = models.TextField()
kwargs = models.TextField()
queue = models.CharField(max_length=200, blank=True, null=True)
exchange = models.CharField(max_length=200, blank=True, null=True)
routing_key = models.CharField(max_length=200, blank=True, null=True)
expires = models.DateTimeField(blank=True, null=True)
enabled = models.BooleanField()
last_run_at = models.DateTimeField(blank=True, null=True)
total_run_count = models.IntegerField()
date_changed = models.DateTimeField()
description = models.TextField()
crontab = models.ForeignKey(DjangoCeleryBeatCrontabschedule, models.DO_NOTHING, blank=True, null=True)
interval = models.ForeignKey(DjangoCeleryBeatIntervalschedule, models.DO_NOTHING, blank=True, null=True)
solar = models.ForeignKey('DjangoCeleryBeatSolarschedule', models.DO_NOTHING, blank=True, null=True)
one_off = models.BooleanField()
start_time = models.DateTimeField(blank=True, null=True)
priority = models.IntegerField(blank=True, null=True)
headers = models.TextField()
clocked = models.ForeignKey(DjangoCeleryBeatClockedschedule, models.DO_NOTHING, blank=True, null=True)
expire_seconds = models.IntegerField(blank=True, null=True)
class Meta:
managed = False
db_table = 'django_celery_beat_periodictask'
class DjangoCeleryBeatPeriodictasks(models.Model):
ident = models.SmallIntegerField(primary_key=True)
last_update = models.DateTimeField()
class Meta:
managed = False
db_table = 'django_celery_beat_periodictasks'
class DjangoCeleryBeatSolarschedule(models.Model):
event = models.CharField(max_length=24)
latitude = models.DecimalField(max_digits=9, decimal_places=6)
longitude = models.DecimalField(max_digits=9, decimal_places=6)
class Meta:
managed = False
db_table = 'django_celery_beat_solarschedule'
unique_together = (('event', 'latitude', 'longitude'),)
class DjangoContentType(models.Model):
app_label = models.CharField(max_length=100)
model = models.CharField(max_length=100)
class Meta:
managed = False
db_table = 'django_content_type'
unique_together = (('app_label', 'model'),)
class DjangoMigrations(models.Model):
app = models.CharField(max_length=255)
name = models.CharField(max_length=255)
applied = models.DateTimeField()
class Meta:
managed = False
db_table = 'django_migrations'
class DjangoSession(models.Model):
session_key = models.CharField(primary_key=True, max_length=40)
session_data = models.TextField()
expire_date = models.DateTimeField()
class Meta:
managed = False
db_table = 'django_session'
class MyappUserGroups(models.Model):
user = models.ForeignKey(MyappUser, models.DO_NOTHING)
group = models.ForeignKey(AuthGroup, models.DO_NOTHING)
class Meta:
managed = False
db_table = 'Myapp_user_groups'
unique_together = (('user', 'group'),)
class MyappUserUserPermissions(models.Model):
user = models.ForeignKey(MyappUser, models.DO_NOTHING)
permission = models.ForeignKey(AuthPermission, models.DO_NOTHING)
class Meta:
managed = False
db_table = 'Myapp_user_user_permissions'
unique_together = (('user', 'permission'),)
models.py
看起來像是通過inspectdb
命令從遺留數據庫生成的。 重新生成模型文件或將以下內容添加到您的models.py
文件中 -
class DjangoContentType(models.Model):
app_label = models.CharField(max_length=100)
model = models.CharField(max_length=100)
class Meta:
managed = False
db_table = 'django_content_type'
unique_together = (('app_label', 'model'),)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.