前提
Djangoで問い合わせフォームを作成しています。
開発環境でメール送信に問題がなければ、問い合わせページにリダイレクトするようにしています。
実現したいこと
フォームに必要事項を入力して送信ボタンを押すと、送信内容がPyCharmのコンソールに表示されるようにしたいです。
ファイル構成は以下です。開発環境用にsetting.dev.py、開発環境・本番環境共通にsetting_common.pyを使用しています。
発生している問題・エラーメッセージ
メール送信後、問い合わせページにリダイレクトされますが、コンソールには表示されません。エラーメッセージは特にありません。
該当のソースコード
setting_dev.pyです。
python
1EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
試したこと
入力ミスを疑い、Djangoのドキュメントから該当コードをコピペしましたが、同じ結果でした。
補足情報(FW/ツールのバージョンなど)
Django 4.0.4
python 3.9.6
Windows 10 home
ご回答よろしくお願いいたします。
アプリケーションはPyCharmから立ち上げていますか?
'django.core.mail.backends.console.EmailBackend'はアプリケーションが立ち上げられた端末プロセスにデータを出力するので、PyCharmのコンソールから立ち上げていない場合、PyCharmのコンソールには何も出力されないと思います。
コンテナや仮想マシンでアプリケーションを実行している場合、そちらの標準出力に出力されているのではないでしょうか。
はい、Pycharmから開発サーバー(runserver)を起動しています。runserverのコンソールには
Inquiry sent by test.user2
"POST /inquiry/ HTTP/1.1" 302 0
が表示されまが、メールの内容は表示されません。
プロジェクトはvenv_done_houseworkという仮想環境の下にあります。仮想環境の標準出力を確認する方法を調べてみたのですが見つけられませんでした。もし問題解決に必要な情報であれば教えて頂けますか?(PyCharmから立ち上げているつもりなので関係のないことかもしれません)
なるほど、そうなのですね。
それでは、↓の情報を教えてもらえますか?
・実際にメール送信を行っているモジュールの内容
・表示されてほしいメールの内容
解決しました!メソッドの呼び出しで()が抜けていました。
考え方を示してくださった@madoka-t さんのおかげです。
この度はありがとうございました。
回答1件
あなたの回答
tips
プレビュー