Trong bài viết này, mình sẽ giới thiệu đến các bạn một module cực kỳ hữu dụng khi làm việc với Django Framework, đặc biệt với những người vừa "lười" vừa thích "làm màu" giống mình. Cụ thể đó là django-extensions
. Và để biết nó là gì thì mình cùng các bạn hãy đi vào những phần tiếp theo nhé. Let's Go!
1. Introduction
django-extensions
là một tập hợp các extensions tùy chỉnh cho Django Framework.
Nó bao gồm các command để quản lý, bổ sung field cho database, extension cho admin và còn nhiều hơn nữa. Cụ thể hơn, chúng ta tiếp tục tìm hiểu sâu xem rằng nó có thể cung cấp những điều hữu ích cho chúng ta nhé.
2. Installation
Có 2 cách để install django-extensions
:
- Install thông qua môi trường ảo:
Nếu bạn đang sử dụng virtualenv thì chạy command:
$ pip install django-extensions
Nếu bạn đang dùng pipenv thì chạy command:
$ pipenv íntall django-extensions
- Install trực tiếp từ source: Nếu bạn muốn install nó từ source, hãy lấy từ
Github
và chạy filesetup.py
:
$ git clone git://github.com/django-extensions/django-extensions.git
$ cd django-extensions
$ python setup.py install
Và sau cùng, đừng quên thêm chúng vào INSTALLED_APPS
trong file settings.py
của project của bạn nha.
3. Provide extensions
3.1. show_urls
Với command
$ python manage.py show_urls
Chúng ta có thể xem được toàn bộ router (urls) đang có trong project cũng như thư mục chúng đang ở và route name của chúng.
3.2. shell_plus
Với shell_plus
, chúng ta được bonus thêm 2 extensions nữa đó là ipython
và bpython
và shell command của chúng ta đã trông bớt nhàm chán, hơn nữa nó còn cho chúng ta tính năng suggestion rất xịn xò nha.
Nhưng trước hết, chúng ta cần phải cài đặt 2 thằng này đã nhé:
$ pipenv install ipython bpython
ipython
:
bpython
:
3.3. graph_models
graph_models
giúp chúng ta generate ra một biểu đồ ER dưới định dạng image cho apps mà chúng ta lựa chọn.
3.4. runserver_plus
runserver_plus
cho phép chúng ta debug ngay ở trên trình duyệt khi mà chúng ta gặp lỗi.
Trên đây là một số extensions mà mình thấy cực kỳ hữu dụng khi chúng ta làm việc với Django. Cảm ơn các bạn đã quan tâm và đọc bài viết của mình.
Mình sẽ tiếp tục gửi đến các bạn các extensions khác trong những bài viết tiếp theo.