1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

got an unexpected keyword argumentエラーを駆逐してやる!

Last updated at Posted at 2022-01-02

はじめに

Djangoからurls.pyで引数を指定してViewをコールした時に、
発生した「got an unexpected keyword argumエラー」を駆逐したので調査報告します。

この世から、エラーを1件も残らず駆逐してやる!!

目次

1.やりたいこと
2.発生したエラー
3.原因
4.解決策

#1. やりたいこと
urls.pyで引数を指定してViewをコールしたい。

#2. 発生したエラー
urls.pyのpath関数とviews.pyのviews関数に引数を指定したら
「got an unexpected keyword argum」エラーが発生した。
エラー画面

#3. 原因
urls.pyの「実引数名」とviews.pyの「仮引数名」が不一致なのが原因だった。
実引数名と仮引数名を一致させればgot an unexpected keyword argumエラーを駆逐できる。

urls.py
urlpatterns = [
    path('<int:id>/', detail, name='detail'),
]
views.py
def detail(request,no):
    snippet = get_object_or_404(Snippet, pk=no)
    return render(request, 'snippets/detail.html',{'snippet': snippet})
]

#4. 解決策
どちらも「id」に修正し、urls.pyの実引数名とviews.pyの仮引数名を一致させて駆逐した。

urls.py
urlpatterns = [
    path('<int:id>/', detail, name='detail'),
]
views.py
def detail(request,id):
    snippet = get_object_or_404(Snippet, pk=id)
    return render(request, 'snippets/detail.html',{'snippet': snippet})
]
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?