前提・実現したいこと
とあるWebアプリケーションをDjangoで開発しています。
画面表示はDjangoのTemplateとViewとFormを使っています。
この開発では仕様書があり、仕様書の中には画面仕様をまとめているものがあります。
画面仕様は表形式になっており、画面上の各項目の説明があり、それごとに番号が割り当てされています。
例: 1-1の項目はテキストエリアで名前を入力する
例: 1-2の項目はプルダウンでで年齢を選択する
実際に開発したDjangoのWebアプリケーション上で割り当てられている番号が、
ちゃんと実装されているかブラウザで目視確認したいという要望があり、この要望をどのように実現するか検討しています。
あくまで目視確認は、Webアプリケーション本番稼働前の動作確認時のみでして、恒久的に数字を表示したいわけではありません。
上記の例で説明しますと、画面上で以下のような形で表示したいです。
※動作確認時
1-1 名前 <テキストエリアが表示される>
1-2 年齢 <プルダウンが表示される>
※通常時時
名前 <テキストエリアが表示される>
年齢 <プルダウンが表示される>
様々な画面がありますが、まずは Djangoのformで自動生成される画面 についてこれを実現したいと思っています。
自分なりに考えてみた案を以下にまとめます。
1.forms.ModelFormを継承して作成したFromクラス内で、labelを使いそこに番号と項目名を挿入する
- https://docs.djangoproject.com/en/3.1/ref/forms/fields/#label
- この方法では、labelに入れた値が常に表示されてしまうため、動作確認・通常時の切り替えができない。
- そのためこの方法は使わない方向で考えています。
2.Djangoの多言語機能で動作確認用の翻訳ファイルを作成しそれで対応する
- https://docs.djangoproject.com/en/3.1/topics/i18n/translation/
- 本来の使い方ではないですが、動作確認時に表示する文字列を他言語というふうに見立てて翻訳ファイルを作成し対応する。
- 至る所でtransタグを使う必要がありそうですが、ベストな方法がなければ仕方がないかと思っています。
.po ファイルの中は以下になるようなイメージです
# path/to/python/user.py:123 msgid "名前" msgstr "1-1 名前"
いろいろ考えてみましたが、ベストな方法が見つかっておりません。
このようなケースでベストな実現方法がございましたら、教えていただきたいです。
よろしくお願いします。
発生している問題・エラーメッセージ
なし
該当のソースコード
なし
試したこと
nasi
補足情報(FW/ツールのバージョンなど)
Django 3.1.5
あなたの回答
tips
プレビュー