Python
Django

Django CharFieldとTextFieldの使い分け

Djangoでモデルを作っている際に

「CharFieldとTextFieldを分ける必要ないんじゃない?」

と思った方もいると思います。

しかし、結論から申し上げますと使い分けるべきです。

その理由としては以下のような理由があげられます。

以下ソースより

’’’

端的に申しますとパフォーマンスの問題です。

TextFieldはCharFieldに比べるとデータベースのパフォーマンスが悪いのです。

具体的には、保存にかかるコスト、読み出しに関するコストが若干高いのです。

小規模なデータベースなら大した差にはならないのですが、これが大規模なものになるとかなりの差になります。

なのでもともと入力する文字数がわかっているなら、CharFieldのほうが良いのです。

普段から少し気にしておくことで、いざというときに困らなくなるので気にするようにしましょう。

’’’

参照先

https://e-tec-memo.herokuapp.com/article/71/

https://stackoverflow.com/questions/7354588/django-charfield-vs-textfield