スタッフページに遷移せず、下記のようなエラーが出てます。cursorを使ってもエラーを解消できずでした。。。。
Internal Server Error: /mypage/2023/12/24/
Traceback (most recent call last):
File "/opt/homebrew/lib/python3.11/site-packages/django/core/handlers/exception.py", line 47, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/core/handlers/base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/views/generic/base.py", line 70, in view
return self.dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/contrib/auth/mixins.py", line 52, in dispatch
return super().dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/views/generic/base.py", line 98, in dispatch
return handler(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/app/views.py", line 139, in get
staff_data = Staff.objects.filter(id=request.user.id).select_related('user').select_related('store')[0]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/query.py", line 325, in getitem
return qs._result_cache[0]
~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range
おそらくユーザーの名前や画像が設定されていないことが原因かと思います。
下記の手順でうまくいっています。
サイトを開くとエラーは解消できているはずです。
https://gyazo.com/7d0c9190dc551d082e9d692b89fec279
本来は、色々エラーチェックを追加する必要がありますね。
チュートリアルはエラーチェックを省いて作ってしまっているので、エラーが発生しています。
宜しくお願いします。
ありがとうございます。
試してみます。
仕事が忙しく返信が遅れ、失礼しました。
間違えて解決済みのボタンを押してしまいました。。。。
管理画面にはスーパーユーザーでログインできます。 ただ、ご指摘いただいた通り、ユーザーの名前や画像が設定を入力しましたが、同じように、スタッフやスーパーユーザーもログインできない状況です。
丸一日、他のことも含め、何度も試しましが、できませんでした。。。。。
Internal Server Error: /mypage/2024/1/21/
Traceback (most recent call last):
File "/opt/homebrew/lib/python3.11/site-packages/django/core/handlers/exception.py", line 47, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/core/handlers/base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/views/generic/base.py", line 70, in view
return self.dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/contrib/auth/mixins.py", line 52, in dispatch
return super().dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/views/generic/base.py", line 98, in dispatch
return handler(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/app/views.py", line 138, in get
staff_data = Staff.objects.filter(id=request.user.id).select_related('user').select_related('store')[0]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^
File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/query.py", line 325, in getitem
return qs._result_cache[0]
~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range
[21/Jan/2024 09:09:41] "GET /mypage/2024/1/21/ HTTP/1.1" 500 85421
githubのコードが間違ってないのでしたら、管理画面のにおける、userやstaff等今回のエラーに関与してそうな作業内容や設定項目を、詳しく教えていただけませんか? その辺りが、有料で購入させていただいた、Zennにも記載されていません。
いつも初歩的な質問ばかりで申し訳ございません。
下記の手順で試してみてください。
git clone https://github.com/mori-tt/reservation_system3.git test
cd test
python -m venv myvenv
■Macの場合
source myvenv/bin/activate
■Winの場合
myvenv/Scripts/activate
requirements.txtでPillowのバージョン指定を削除
Django~=3.1.4
django-allauth~=0.41.0
django-widget-tweaks~=1.4.8
Pillow
pip3 install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver
管理画面にログイン
http://localhost:8000/admin/
Usersでスーパーユーザーの姓、名、画像を設定
https://gyazo.com/f6c3f5ce9d7498da15757a36bb4347f2
Storesで店舗を追加
https://gyazo.com/c7c7eb2101aa876f8bb7862048f30ada
Staffsスタッフと店舗を設定
https://gyazo.com/f9a01cc57bb257b5a410c4f0dc4dadd5
上記の通りの手順で全て試してみました。
superuserに関して、スタッフログインからログインできました。
ただ、所属店舗を登録してもその店舗のものが表示されず、所属店舗を登録しないでも同じ画面が表示されます。
スタッフサインアップから登録して画面遷移すると下記のエラーが出ます。
管理画面から通常ユーザーに関しては、所属店舗を設定しましたが、スタッフログインからログインすると前回と同じようなエラーが出ます。。。。
いつも質問ばかりで申し訳ございません。
・スタッフサインアップから登録して画面遷移した際に出るエラー
Internal Server Error: /mypage/2024/1/21/
Traceback (most recent call last):
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/myvenv/lib/python3.11/site-packages/django/core/handlers/exception.py", line 47, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/myvenv/lib/python3.11/site-packages/django/core/handlers/base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/myvenv/lib/python3.11/site-packages/django/views/generic/base.py", line 70, in view
return self.dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/myvenv/lib/python3.11/site-packages/django/contrib/auth/mixins.py", line 52, in dispatch
return super().dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/myvenv/lib/python3.11/site-packages/django/views/generic/base.py", line 98, in dispatch
return handler(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/app/views.py", line 139, in get
staff_data = Staff.objects.filter(id=request.user.id).select_related('user').select_related('store')[0]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^
File "/Users/moritakashihiroshi/Documents/python/reservation_system3/myvenv/lib/python3.11/site-packages/django/db/models/query.py", line 325, in getitem
return qs._result_cache[0]
~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range
[21/Jan/2024 21:10:53] "GET /mypage/2024/1/21/ HTTP/1.1" 500 87861
解決しました。
次はこのプロジェクトにカスタマーログインを実装を追加したいと思います。
色々試してみたのですが、解決できず、
先生の完成コードと私のコードを見比べていたところ、間違いを発見しました。
⚫︎sccountsフォルダ内のforms.py
https://gyazo.com/276b9cce2efb53431983225143bc48a4
・app/template/appフォルダ内のmypage.html
https://gyazo.com/18e65a8c30d6cb87fd82548bfdce6898