2016-12-28 8 views
1

私はDjango &のウェブプログラミング全般に対して非常に新しくなっています。だから、私は愚かな質問をお詫び申し上げます。私はpython manage.py migrateコマンド&を走った後、それはすべてがOKだったと出力djangoでモデルを起動すると、なぜpostgresql pgAdmin UIで直接クエリできないのですか?

DATABASES = { 
     'default': { 
     'ENGINE': 'django.db.backends.postgresql_psycopg2', 
     'NAME': 'testdb', 
     'USER': 'postgres', 
     'PASSWORD': '****', 
     'HOST': 'localhost', 
     'PORT': '5432', 
    } 
} 

:私は私のデータベースとの接続を行っているのpython &とフレームワーク、Postgresqlのようジャンゴを使用しています。私はまた、モデルを作成しました:

class Albums(models.Model): 
    artist = models.CharField(max_length=250) 
    album_title = models.CharField(max_length=500) 
    genre = models.CharField(max_length=100) 
    album_logo = models.CharField(max_length=1000) 

class Song(models.Model): 
    albums = models.ForeignKey(Albums, on_delete=models.CASCADE) 
    file_type = models.CharField(max_length=10) 
    song_title = models.CharField(max_length=250) 

その後、私はそれが動作することを出力するコマンドpython manage.py makemigrationsを、実行します。次に、私はコマンドをpython manage.py migrate &実行すると、すべてが正常であることが出力されます。

私はSELECT * FROM Albumsでデータを照会し、&のpgAdminでデータベースにアクセスすると、その関係を認識しない理由がわかります。

これは、テーブルが作成されているかどうかをテストする正しい方法ではありませんが、誰も私を助けて、なぜそれらがpgAdmin UIで作成されないのか教えてください。

また、テーブルの作成場所を確認するにはどうすればよいですか?

ありがとうございます。

+2

テーブルがクラスの正確な名前で作成されていないので、db内のすべてのテーブルを選択すると、それらは小文字の 'appname_classname'のような名前になります。 –

+0

@simonecittadini助けてくれてありがとう! :)と愚かな質問に申し訳ありません – RPG

+0

@ simonecittadini答えとして投稿してください。 –

答えて

4

テーブル名は少し異なりますが、モデル名と同じではありません。それは "app_model"になります。すべての文字は小文字です。この例では、クエリは次のようになります。あなたが言ったように

SELECT * FROM 'app'_albums 

あなたがWeb開発に新しく追加され、下部ケース

にアプリの名前で「アプリ」を交換してください、

\dt *.* 
を試してみてください

データベース内のすべてのテーブルが一覧表示されます。

関連する問題