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

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

新規登録して質問してみよう
ただいま回答率
85.35%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

5081閲覧

pythonのWEBアプリケーション作成途中にエラー(TypeError: 'NoneType' object is not callable)が出た

DR.py

総合スコア18

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/09/06 05:48

編集2020/09/06 05:59

前提・実現したいこと

djangoを用いてWEBアプリケーションを作っている途中でTypeError: 'NoneType' object is not callableが出てしまった。

エラーメッセージ

http://127.0.0.1:8000/にはアクセスでき、http://127.0.0.1:8000/inquiry/のページに行くとTypeError: 'NoneType' object is not callableが起こってしまう

Django version 3.1.1, using settings 'private_diary.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK. 2020-09-06 13:57:43,838 [INFO] C:\Users\rikuw\venv_private_diary\lib\site-packages\django\core\servers\basehttp.py(Line:157) "GET / HTTP/1.1" 200 4400 2020-09-06 13:57:43,859 [WARNING] C:\Users\rikuw\venv_private_diary\lib\site-packages\django\core\servers\basehttp.py(Line:157) "GET /static/css/mystyle.css HTTP/1.1" 404 1671 2020-09-06 13:57:53,117 [ERROR] C:\Users\rikuw\venv_private_diary\lib\site-packages\django\utils\log.py(Line:224) Internal Server Error: /inquiry/ Traceback (most recent call last): File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\core\handlers\exception.py", line 47, in inner response = get_response(request) File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\core\handlers\base.py", line 179, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\views\generic\base.py", line 70, in view return self.dispatch(request, *args, **kwargs) File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\views\generic\base.py", line 98, in dispatch return handler(request, *args, **kwargs) File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\views\generic\edit.py", line 133, in get return self.render_to_response(self.get_context_data()) File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\views\generic\edit.py", line 66, in get_context_data kwargs['form'] = self.get_form() File "C:\Users\rikuw\venv_private_diary\lib\site-packages\django\views\generic\edit.py", line 33, in get_form return form_class(**self.get_form_kwargs()) TypeError: 'NoneType' object is not callable 2020-09-06 13:57:53,120 [ERROR] C:\Users\rikuw\venv_private_diary\lib\site-packages\django\core\servers\basehttp.py(Line:157) "GET /inquiry/ HTTP/1.1" 500 82013

urls.py

python

1from django.urls import path 2 3from . import views 4 5 6app_name = 'diary' 7urlpatterns = [ 8 path('', views.IndexView.as_view(), name="index"), 9 path('inquiry/', views.InquiryView.as_view(), name="inquiry"), 10] 11

forms.py

from django import forms class InquiryForm(forms.Form): name = forms.CharField(label='お名前', max_length=30) email = forms.EmailField(label='メールアドレス') title = forms.CharField(label='タイトル', max_length=30) message = forms.CharField(label='メッセージ', widget=forms.Textarea) def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields['name'].widget.attrs['class'] = 'form-control col-9' self.fields['name'].widget.attrs['placeholder'] = 'お名前をここに入力してください。' self.fields['email'].widget.attrs['class'] = 'form-control col-11' self.fields['email'].widget.attrs['placeholder'] = 'メールアドレスをここに入力してください。' self.fields['title'].widget.attrs['class'] = 'form-control col-11' self.fields['title'].widget.attrs['placeholder'] = 'タイトルをここに入力してください。' self.fields['message'].widget.attrs['class'] = 'form-control col-12' self.fields['message'].widget.attrs['placeholder'] = 'メッセージをここに入力してください。'

###views.py

from django.shortcuts import render # Create your views here. from django.views import generic from.forms import InquiryForm class IndexView(generic.TemplateView): template_name = "index.html" class InquiryView(generic.FormView): template_name = "inquiry.html" from_class = InquiryForm

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

windows
Python 3.8.5

python -m django --version

3.1.1

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

typoしてます。

python

1# from_class = InquiryForm 2form_class = InquiryForm

投稿2020/09/06 22:53

hasami

総合スコア1277

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

DR.py

2020/09/07 02:54

簡単なミスで申し訳ございません。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問