現在、Dockerインスタンス内のDjango 1.5.2プロジェクトで、別のDockerインスタンスのmysqlデータベースと会話しています。私は、接続が必要な2つのテーブルを指す2つの外部キーを含む中間テーブルを作成して、2つのテーブル間の多対多関係を作成しようとしています。問題は、私がpython manage.py syncdb
を実行し、次のエラーを端末に吐き出すときに発生します:NameError: name 'QueryString' is not defined
。私のモデルではQueryString
が明確に定義されています。ここでDjangoモデルの 'QueryString' BaseObjectを認識できない外部キー
私のモデルは、それだけで罰金Tag
モデルを認識している
class Tag(models.Model):
name = models.CharField(max_length=100)
class QueryStringTab(models.Model):
tag = models.ForeignKey(Tag, related_name='querystringtab')
querystring = models.ForeignKey(QueryString, related_name='querystringtab')
class QueryString(BaseObject):
"""
Query string holds an SQL statement and query properties for execution
"""
server_id = models.IntegerField()
schema = models.CharField(max_length=255, blank=True)
query = models.CharField(max_length=60000)
variables = models.TextField(blank=True)
created_by = models.ForeignKey(User, related_name='queries_created')
updated_by = models.ForeignKey(User, related_name='queries_last_edited')
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField()
touched_by = models.CharField(max_length=1000)
config = models.TextField(blank=True)
runs_started = models.IntegerField(default=0)
runs_completed = models.IntegerField(default=0)
runs_completed_duration = models.IntegerField(default=0) # total number of seconds spent running this query to completion
formats = "pretty_html html json prettyjson csv excel tableau".split()
注目すべきポイント...
1)...です。
2)それはそれは成功し、誰もが私が間違っているのことを明らかに何かを見つけることができますmysqlデータベース
でTag
テーブルを作成しています)QueryString
がBaseObject
3であるという事実とは何かを持ってもらえますか?
私が知っているところから、Djangoの自動生成データベースアクセスAPIを使用するには、models.Modelクラスを使用する必要があります。だから私は#2の本能が正しいと思う)。 –
'BaseObject'クラスとは何ですか? –