1. ホーム
  2. python

[解決済み] django MultiValueDictKeyError エラー、どうすればいい?

2022-02-08 06:37:53

質問内容

オブジェクトをデータベースに保存しようとしているのですが、その際に MultiValueDictKeyError というエラーが発生します。

問題はフォームの中にあります。 is_private はチェックボックスで表現されています。チェックボックスが選択されていない場合、明らかに何も渡されません。ここでエラーがチャックされる。

この例外を適切に処理し、キャッチするにはどうしたらよいでしょうか。

その行は

is_private = request.POST['is_private']

解決方法は?

MultiValueDictの get メソッドを使用します。これは標準的なディクショナリーにも存在し、値を取得する一方で、値が存在しない場合はデフォルトを提供する方法です。

is_private = request.POST.get('is_private', False)

一般的に

my_var = dict.get(<key>, <default>)