• verbose_nameを設定すると何が変わるのか【before/afterで解説】

    djangoでは本当に多くの属性が出てくるので覚えるのが大変ですよね。そんな数多くの属性の一つであるverbose_name。

    今回はこの使い方についてみていきましょう。

    verbose_nameを使うと、管理画面での表示が変わります

    結論からお伝えすると、verbose_nameを使うことによって、管理画面での表示内容が変わります。

    何が変わるのかというと、モデルの名前です。

    モデルは英語でシンプルな名前にしていることが多いですが、それが何を意味すのか分かりづらいこともあるかもしれません。

    そのようなときに、verbose_nameを使うことによって、分かりやすい名前にすることができるのです。

    verboseは、詳細なという意味があります

    ちなみに、verboseという言葉には、詳細なという意味があります。

    つまり、モデルで名付けた簡単な名前ではなく、詳細な名前にするということです。

    言葉の意味から整理していくと、頭に入りやすいかもしれません。

    verbose_nameを設定する前

    verbose_nameを設定する前に、設定をしなかった場合の管理画面の表示についてみていきましょう。

    verbosenameの設定前

    verbose_nameの設定と、設定後

    ここから、verbose_nameの設定方法についてみていきましょう。

    verbose_nameの設定は、models.pyファイルの中で行います。

     

    コード
    

    -BASE/app/models.py

    class AppModel(models.Model):

        ...

        class Meta:

            verbose_name = 'アプリモデル'

     

    modelの中でclass Metaを定義し、この中でverbose_nameを設定しました。

    class Metaというのは、直接操作するようなデータではなく、裏で設定されている項目を操作するときに使われるクラスです。

    この設定をした結果、管理画面がどのような表示になるのかみてみましょう。

    verbosenameの設定方法、その2

    アプリモデルsという記載になりました。

    無事に記載が変わったことは確認できたのですが、sをつけた覚えがないにも関わらず勝手についています。

    このsを削除するためには、verbose_name_pluralを定義します。

    コード
    

    -BASE/app/models.py

    class AppModel(models.Model):

        ...

        class Meta:

            verbose_name_plural = 'アプリモデル'

    verbose_nameとverbose_name_pluralは同時に定義する必要はありませんので、sを消して表示したいときはverbose_name_pluralを使うようにしましょう。

    上記の設定をすると、管理画面はこのような表示になります。

    verbosenameの設定その3

    verbose_nameをうまく使いこなし、誰が見ても分かりやすいようなサイトにしていきましょう。

    ~Django無料講義~のご案内

    Code for Djangoが、4時間超の無料Django講義をはじめました

    •  ・本を出版したCode for Djangoの
       製作者が作ったサイトです。
    •  ・Code for Djangoの内容も、
       動画で詳しく解説しています。
    •  ・動画は順次ふやしていきますので、
       ただで学び続けることが可能です。
    •  ・Djangoの効率的なスキルアップに、
       是非お役立て下さい。