[解決済み] Django - ''の逆が見つかりません。'' は有効なビュー関数またはパターン名ではありません。
2022-02-12 01:55:31
質問
講座のプロジェクトに取り組んでいるのですが、今、完全に行き詰っています。ペイパルを通じて製品を販売するウェブサイトを作成していますが、ペイパルの返品/キャンセルのページが正しくレンダリングされていません。レッスンの例に従い、コードを100回チェックしましたが、明らかに何か足りないものがあります。
商品に行き、今すぐ購入をクリックし、ペイパルにログインして、購入をキャンセルするか、商品を購入してマーチャントのページに戻ると、エラーが発生します。 paypal_return.html と paypal_cancel.html は templates/paypal/ に保存されている2つのテンプレートです。
何が足りないのか、どなたかおわかりになりますか?
ここで、完全なコードを見ることができます。 https://github.com/IreneG5/spss_online
トレースバック
Environment:
Request Method: GET
Request URL: http://127.0.0.1:8000/paypal-cancel/
Django Version: 1.11.4
Python Version: 2.7.12
Installed Applications:
['django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_forms_bootstrap',
'paypal.standard.ipn',
'home',
'accounts',
'paypal_store',
'products']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware']
Template error:
In template C:\Users\irene\Documents\Full-Stack-Developer\Stream3\Project\spss_online\templates\base.html, error at line 10
Reverse for '' not found. '' is not a valid view function or pattern name. 1 : {% load staticfiles %}
2 : <!DOCTYPE html>
3 : <html lang="en">
4 : <head>
5 : <meta charset="UTF-8">
6 : <title>Buy SPSS Online</title>
7 : <meta name="viewport" content="width=device-width, initial-scale=1.0">
8 : <meta name="description" content="">
9 : <meta name="author" content="">
10 : <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootswatch/3.3.7/cerulean/bootstrap.min.css">
11 : <link rel="stylesheet" href="{% static 'css/style.css' %}">
12 :
13 :
14 : </head>
15 : <body>
16 : <div class="container">
17 : <div class='container-fluid'>
18 : <nav id="menu" class="navbar navbar-inverse">
19 : <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
20 : <span class="icon-bar"></span>
Traceback:
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\core\handlers\exception.py" in inner
41. response = get_response(request)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\core\handlers\base.py" in _get_response
187. response = self.process_exception_by_middleware(e, request)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\core\handlers\base.py" in _get_response
185. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Users\irene\Documents\Full-Stack-Developer\Stream3\Project\spss_online\paypal_store\views.py" in paypal_cancel
15. return render(request, 'paypal/paypal_cancel.html', args)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\shortcuts.py" in render
30. content = loader.render_to_string(template_name, context, request, using=using)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\loader.py" in render_to_string
68. return template.render(context, request)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\backends\django.py" in render
66. return self.template.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render
207. return self._render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in _render
199. return self.nodelist.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render
990. bit = node.render_annotated(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render_annotated
957. return self.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\loader_tags.py" in render
177. return compiled_parent._render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in _render
199. return self.nodelist.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render
990. bit = node.render_annotated(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render_annotated
957. return self.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\loader_tags.py" in render
72. result = block.nodelist.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render
990. bit = node.render_annotated(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\base.py" in render_annotated
957. return self.render(context)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\template\defaulttags.py" in render
458. url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\urls\base.py" in reverse
91. return force_text(iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)))
File "C:\Users\irene\virtualenv\spss_online_env\lib\site-packages\django\urls\resolvers.py" in _reverse_with_prefix
497. raise NoReverseMatch(msg)
Exception Type: NoReverseMatch at /paypal-cancel/
Exception Value: Reverse for '' not found. '' is not a valid view function or pattern name.
解決方法は?
urlタグを使用する場合、文字列リテラルには引用符を使用するなどの工夫が必要です。
{% url 'products' %}
現時点では
product
は変数のように扱われ、次のように評価されます。
''
をエラーメッセージで表示します。
関連
-
Python関数の高度な応用を解説
-
pythonサイクルタスクスケジューリングツール スケジュール詳解
-
Pythonショートビデオクローラーチュートリアル
-
FacebookオープンソースワンストップサービスpythonのタイミングツールKats詳細
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み] _tkinter.TclError: 表示名がなく、$DISPLAY環境変数もない。
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】 AttributeError("'str' object has no attribute 'read'")
-
[解決済み】 TypeError: += でサポートされていないオペランド型: 'int' および 'list' です。
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
pythonサイクルタスクスケジューリングツール スケジュール詳解
-
任意波形を生成してtxtで保存するためのPython実装
-
Python LeNetネットワークの説明とpytorchでの実装
-
Python Pillow Image.save jpg画像圧縮問題
-
[解決済み】numpyの配列連結。"ValueError:すべての入力配列は同じ次元数でなければならない"
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み】終了コード -1073741515 (0xC0000135)でプロセス終了)
-
[解決済み] 'DataFrame' オブジェクトに 'sort' 属性がない
-
[解決済み】syntaxError: 'continue' がループ内で適切に使用されていない
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない