لماذا لا يقوم Django بإنشاء جدول كامل من نموذج؟
-
20-09-2019 - |
سؤال
لدي نموذجان. أقوم بتشغيل manage.py syncdb ولكنه ينشئ حقول معرف فقط لنموذجين. كيف تجعلها تولد الحقول المتبقية؟ يرجى المشورة بلطف. مساعدتكم هو محل تقدير كبير!
ها هي طرازاتي.
from django.db import models
GENDER_CHOICES = (
('M', 'Male')
, ('F', 'Female')
)
ACTIVATION_CHOICES = (
('Y', 'Activate')
, ('N', 'Inactive')
)
FULL_PART_CHOICES = (
('F', 'Full-time')
, ('P', 'Part-time')
)
# Create your models here.
class Teachers(models.Model):
id = models.AutoField(primary_key=True, null=False),
fname = models.CharField(max_length=15, null=False),
mname = models.CharField(max_length=15, null=False),
lname = models.CharField(max_length=15, null=False),
gender = models.CharField(max_length=1, choices=GENDER_CHOICES, null=False),
nric = models.CharField(max_length=12, unique=True, null=False),
email = models.EmailField(max_length=40, unique=True, null=False),
dob = models.DateField(null=False),
unit = models.CharField(max_length=50, null=False),
block = models.CharField(max_length=50, null=False),
street = models.CharField(max_length=100, null=False),
postcode = models.CharField(max_length=10, null=False),
handphone = models.CharField(max_length=16, unique=True, null=False),
homephone = models.CharField(max_length=16, null=False),
activated = models.CharField(max_length=1, choices=ACTIVATION_CHOICES, null=False),
date_ttc = models.DateField(null=False),
full_part = models.CharField(max_length=1, choices=FULL_PART_CHOICES, null=False),
nonce = models.CharField(max_length=40, unique=True, null=False),
passwd = models.CharField(max_length=40, null=False),
created_at = models.DateTimeField(auto_now_add=True, null=False),
updated_at = models.DateTimeField(auto_now=True, null=False),
def __unicode__(self):
return "Teacher %s %s %s" % (self.fname, self.mname, self.lname)
# Create your models here.
class Admins(models.Model):
id = models.AutoField(primary_key=True, null=False),
fname = models.CharField(max_length=15, null=False),
mname = models.CharField(max_length=15, null=False),
lname = models.CharField(max_length=15, null=False),
gender = models.CharField(max_length=1, choices=GENDER_CHOICES, null=False),
nric = models.CharField(max_length=12, unique=True, null=False),
email = models.EmailField(max_length=40, unique=True, null=False),
dob = models.DateField(null=False),
unit = models.CharField(max_length=50, null=False),
block = models.CharField(max_length=50, null=False),
street = models.CharField(max_length=100, null=False),
postcode = models.CharField(max_length=10, null=False),
handphone = models.CharField(max_length=16, unique=True, null=False),
homephone = models.CharField(max_length=16, null=False),
activated = models.CharField(max_length=1, choices=ACTIVATION_CHOICES, null=False),
nonce = models.CharField(max_length=40, unique=True, null=False),
passwd = models.CharField(max_length=40, null=False),
created_at = models.DateTimeField(auto_now_add=True, null=False),
updated_at = models.DateTimeField(auto_now=True, null=False),
def __unicode__(self):
return "Admin %s %s %s" % (self.fname, self.mname, self.lname)
المحلول 2
كان ذلك سهلاً للغاية. كان هناك الكثير من الفواصل الزائدة عن الحاجة بعد كل إعلان ميداني. لقد أزلت هؤلاء وكل شيء يعمل بشكل جيد.
شكرا لردكم.
نصائح أخرى
يمكنك إما إسقاط الجداول إذا لم يكن لديك أي بيانات عليها أو استخدامها django-south
الذي يمكنك استخدامه للترحيل.
لا تنتمي إلى StackOverflow