Wad*_*nde 5 python django model nameerror
我已经查看了这个主题下的 stackoverflow 问题,并且我将 Trainer 类移到了 Class_Training 类的上方,但是当我输入“manage.py create”时,我仍然收到相同的“name 'Model' is not defined”错误超级用户”在我的命令提示符下。
另外,我很难迁移我的模型。我尝试过“django-admin makemigrations training”,但无法识别 django-admin;和 'manage.py makemigrations training' 但 makemigrations 未被识别。
如何迁移我的模型?
这是我的代码:
    #from django.db import models
 from django_pg import models
# Create your models here.
TRAINING_TYPE_CHOICES = (
    ('AC', 'Armed Combat'),
    ('UC', 'Unarmed Combat'),
    ('P', 'Piloting'),
    ('O', 'Other'),
)
GENDER_CHOICES = (
    ('F', 'Female'),
    ('M', 'Male'),
    ('U', 'Unspecified'),
    )
OUTCOME_CHOICES = (
    ('P', 'Pass'),
    ('F', 'Fail'),
    )
class Trainer(models, Model):
    first_name = models.CharField(max_length = 25)
    surname = models.CharField(max_length = 30)
    address = models.CharField(max_length = 200)
    gender = models.CharField(max_length = 1, choices = GENDER_CHOICES)
    citizenship = models.CharField(max_length = 30)
    email = models.EmailField(max_length = 30)
class Class_Training(models, Model):
    trainer = models.ForeignKey('Trainer')
    class_name = models.CharField(max_length = 30)
    type_of_class = models.CharField(max_length = 2, choices= TRAINING_TYPE_CHOICES)
    description = models.TextField(max_length = 200)
    def __str__(self):
            return self.class_name, self.trainer
class ReportLog(models.CompositeField):
    class_ID = models.IntegerField
    hero_ID = models.IntegerField
    outcome = models.CharField(max_length = 1, choices = OUTCOME_CHOICES)
    comments = models.TextField
    trainer = models.IntegerField
    class Meta:
        db_type = 'report'
class Attendance(models.CompositeField):
    class_ID = models.IntegerField
    hero_ID = models.IntegerField
    room_name = models.CharField(max_length = 30)
    date = models.DateField
    start_time = models.TimeField
    end_time = models.TimeField
    class Meta:
        db_type = 'attendance'
class Room(models, Model):
    room_name = models.CharField(max_length = 20)
class Hero(models, Model):
    codename = models.CharField(max_length = 20)
    def __str__(self):
        return self.codename
Model您在某些模型定义中使用了models, Model而不是models.Model。该Model班是在model模块。这就是我们使用.逗号而不是逗号的原因。
房间模型:
class Room(models.Model):
英雄模型:
class Hero(models.Model):
教练机型号:
class Trainer(models.Model):
最后:
class Class_Training(models.Model):
它应该是:
python manage.py makemigrations
你需要python命令。还要检查您是否在您所在的目录中manage.py。
| 归档时间: | 
 | 
| 查看次数: | 36508 次 | 
| 最近记录: |