2016-10-19 6 views
0

私は架空の学校のデータベースを作成しようとしています。私は、テーブルを移行しようとすると、Unfortunatleyこれが起こる:Djangoは移行時に変更がないと言います

C:\ Python34 \スクリプト\ schoolDatabase> manage.py makemigrationsスクール

C:\ Python34 \スクリプト\ schoolDatabase>のpython manage.py makemigrations学校 ありません変更アプリ「学校の中で検出さ

これは私が参照していたモデルである:私は管理がFalseに設定された場合は、移行するときにDjangoはテーブルを作成しないことを聞いたが、私ドン

TYPE_OF_PERSON = (
('T', 'Teacher'), 
('S', 'Student'),) 
DETENTION_COMPLETED = (
('Y', 'Yes'), 
'N', 'No' 
OUTCOME = (
('P', 'Pass'), 
('F', 'Fail') 
) 
class Person: 
first_name = models.CharField(max_length = 25) 
surname = models.CharField(max_length = 25) 
address = models.CharField(max_length = 45) 
year_group = models.CharField(max_length = 10) 
form = models.CharField(max_length = 15) 
type_of_person = models.CharField(choices = TYPE_OF_PERSON) 
person_id = models.CharField(primary_key = True) 

class Subject: 
name = models.CharField(max_length = 25) 
class SchoolClass: 
class_id = models.IntegerField(primary_key = True) 
person_id = models.ForeignKey('Person') 
subject = models.ForeignKey('Subject') 
year_group = models.ForeignKey('Person') 

class Attendance: 
school_class = models.ForeignKey('SchoolClass') 
date = models.DateField() 
start_time = models.TimeField() 
end_time = models.TimeField() 
person_id = models.ForeignKey('Person') 

class Assignment: 
assignment_id = models.IntegerField(primary_key = True) 
subject = models.ForeignKey('Subject') 
school_class = models.ForeignKey('SchoolClass') 
teacher = models.ForeignKey('Person') 
description =models.TextField() 
date_set = models.DateField() 
due_date = models.DateField() 
mark = models.CharField(max_length = 20) 
comments = models.TextField() 

class Detention: 
detention_date = models.DateField() 
student_id = models.ForeignKey('Person') 
reason = models.CharField(max_length = 30) 
completed = models.CharField(choices = DETENTION_COMPLETED) 

class Exam: 
exam_id = models.IntegerField(primary_key = True) 
subject = models.ForeignKey('Subject') 
paper = models.CharField(max_length = 30) 
score = models.CharField(max_length = 20) 
outcome = models.CharField(choices = OUTCOME) 

方法を知っているそれを真にする。私が入力したとき

:それinspectdb

manage.pyはFalseに設定された管理それを見せてくれたが、私のデータベースが移行されるように、私はそれがTrueにする方法を変更できますか?

ここ

はトレースバックです:

C:\ Python34 \スクリプト\ schoolDatabase> manage.py makemigrationsスクール

C:\ Python34 \スクリプト\ schoolDatabase>のpython manage.py makemigrations学校 検出された変更なしアプリで '学校' は

                              class DjangoMigrations(models.Model):        id = models.IntegerField(primary_key=True) # AutoField?  app = models.CharField(max_length=255)       name = models.CharField(max_length=255)      applied = models.DateTimeField()                        class Meta:              managed = False            db_table = 'django_migrations'       

ここツリーです:

enter image description here enter image description here

申し訳ありませんが、フォーマットが不良ですが、stackoverflowはコードブロックに入れられません。

ご協力いただければ幸いです。

Settings.py:models.Modelから派生する必要があり

INSTALLED_APPS =[ 
'django.contrib.admin', 
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.messages.', 
'django.contribe.staticfiles', 
'school' 
] 
+0

???他の移行コードも表示できますか? –

+0

これは最初の移行ではありません。 –

+0

OK、あなたのsettings.pyファイルとあなたのプロジェクトツリーを表示します。 './manage.py makemigrations --initial school'としてみてください –

答えて

0

あなたのモデル:

あなたが前にいくつかの移行を適用している
class Person(models.Model): 
... 
class Subject(models.Model): 
... 
... 
関連する問題