アプリのモデルを定義していますが、さまざまな検証手順のために「ステータス」という名前の列が必要です。これは単純化されたユーザー モデルです。
クラス ユーザー id(整数) 名前(文字列) status(int) # 0- 新規 1-アクティブ 2-非アクティブ 3-報告済み 4-削除済み
私は仲間の Python 開発者に私のコードをレビューするように依頼しました。彼は私が「マジックナンバー」を避けるように提案しました。彼の解決策は次のとおりです。
クラスの選択肢: @クラスメソッド def get_value (cls、キー): # 表示する必要がある場合は、文字列表示を取得します for k, v in cls.CHOICES: k == キーの場合: v を返す 戻る "" クラス UserStatusChoices(Choices): 新規 = 0 アクティブ = 1 非アクティブ = 2 報告済み = 3 削除済み = 4 選択肢 = ( (NEW, "NEW"), (アクティブ、「アクティブ」)、 (非アクティブ、「非アクティブ」)、 (報告、「報告」)、 (削除済み、「削除済み」)、 )
代わりに簡単な辞書を使用できませんか? 「クラス」のソリューションの正当な理由がわかる人はいますか?