質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.48%

django/postgresqlのエラーによりrunserverが立ち上がらない

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 365

score 20

前提・実現したいこと

動かして学ぶ!pythonDjango開発入門という本で学習中です。
Djangoを使いwebアプリケーションを作ろうとしているのですがrunserverでエラーが出たの解決策を教えて頂きたいです。

右も左もわからず回答していただくには質問内容が乏しいかと思いますがよろしくお願いします、、、

環境
Mac M1 version 11.3
python 3.9.2
Django 3.2

上記の本ではvenvを使っていましたが、condaを使っています。

発生している問題・エラーメッセージ

/usr/local/Caskroom/miniforge/base/envs/webapp_env/bin/python /Users/haru/private_diary/manage.py runserver
2021-05-05 09:16:51,562    [INFO]    /usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/autoreload.py(Line:636)    Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
Exception in thread django-main-thread:
Traceback (most recent call last):
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 219, in ensure_connection
    self.connect()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 200, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/postgresql/base.py", line 187, in get_new_connection
    connection = Database.connect(**conn_params)
  File "/Users/haru/.local/lib/python3.9/site-packages/psycopg2/__init__.py", line 127, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: FATAL:  database "private_diary" does not exist


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/threading.py", line 954, in _bootstrap_inner
    self.run()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/threading.py", line 892, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/autoreload.py", line 64, in wrapper
    fn(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/core/management/commands/runserver.py", line 121, in inner_run
    self.check_migrations()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/core/management/base.py", line 486, in check_migrations
    executor = MigrationExecutor(connections[DEFAULT_DB_ALIAS])
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/migrations/executor.py", line 18, in __init__
    self.loader = MigrationLoader(self.connection)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/migrations/loader.py", line 53, in __init__
    self.build_graph()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/migrations/loader.py", line 220, in build_graph
    self.applied_migrations = recorder.applied_migrations()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/migrations/recorder.py", line 77, in applied_migrations
    if self.has_table():
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/migrations/recorder.py", line 55, in has_table
    with self.connection.cursor() as cursor:
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 259, in cursor
    return self._cursor()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 235, in _cursor
    self.ensure_connection()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 219, in ensure_connection
    self.connect()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/utils.py", line 90, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 219, in ensure_connection
    self.connect()
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 200, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/miniforge/base/envs/webapp_env/lib/python3.9/site-packages/django/db/backends/postgresql/base.py", line 187, in get_new_connection
    connection = Database.connect(**conn_params)
  File "/Users/haru/.local/lib/python3.9/site-packages/psycopg2/__init__.py", line 127, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
django.db.utils.OperationalError: FATAL:  database "private_diary" does not exist

試したこと

django.db.utils.OperationalError: FATAL:  database "private_diary" does not exist


ここからprivate_diaryというデータベースを作れていないのか思いターミナルに「psql -l]と打ちこむとprivate_diaryは作れていました。
List of databases
Name      | Owner | Encoding | Collate | Ctype | Access privileges 
----------------+-------+----------+---------+-------+-------------------
postgres       | haru  | UTF8     | C       | C     | 
privatet_diary | haru  | UTF8     | C       | C     | 

以下略

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': "private_diary",
        "USER": os.environ.get("DB_USER"),
        "PASSWORD": os.environ.get("DB_PASSWORD"),
        "HOST": '',
        "PORT": '',


settinngs.pyの方は本の通りに記述しています。

他にも諸々試しましたが一日かけても解決せず、、回答していただく上で不明な点あれば補足しますのでよろしくお願いします。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

0

おはようございます。

問題提起に関して読ませていただきました。

djangoを使ったことないので、動くかどうかわからないですが、
'HOST': 'localhost',

に変更したらどのようになりますでしょうか?databaseと接続がうまくいっていないように感じられます。

<参考記事>
PostgreSQL 初心者向け 導入備忘録

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2021/05/05 14:09

    お恥ずかしながらdatabaseのprivate_diaryがprivatet_diaryと打ち間違えていました、、

    キャンセル

  • 2021/05/05 19:32

    あら、table名の違いだったんですね!

    今後の対策として、databaseのtable確認の方法はわかってると思いますので、table確認からtable名をコピーして、ファイル内検索して単語がひっかるかどうかの確認を行うようにするとミスが減っていいですね。

    おすすめのエディタはVsCodeです。
    ・VsCode(https://azure.microsoft.com/ja-jp/products/visual-studio-code/)

    Enjoy!!!

    キャンセル

  • 2021/05/05 19:32

    またわからないことがありましたら、気軽にご連絡ください。🙇‍♂️

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.48%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る