Khởi tạo dự án Django

Khởi tạo dự án Django

Sau khi hoàn thành việc cài đặt Python và gói Django trên máy tính cá nhân của mình, bạn có thể bắt đầu tạo một dự án web đơn giản với câu lệnh sau trong shell

$ mkdir djangotutorial
$ python -m django startproject mysite djangotutorial

Nếu thao tác trên không xảy ra lỗi, nó sẽ tạo ra các folder và file dự án bên trong thư mục djangotutorial. Cấu trúc thư mục của bạn sẽ có dạng

djangotutorial/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py

Trong đó chúng ta có:

  • manage.py: Đây là tệp lệnh điều khiển chính của dự án Django. Bạn sẽ cần nó để thực hiện các tác vụ liên quan đến khởi chạy server, tạo ứng dụng, tạo cơ sở dữ liệu, migration, v.v

  • Thư mục mysite/ : Đây là thư mục chứa mã nguồn chính của dự án Django - là nơi chứa các cấu hình và thành phần quan trọng của dự án.

    • __init__.py: Là một tệp đặc biệt dùng để định nghĩa mysite là một gói (package) Python.

    • settings.py: Là tệp cấu hình chính của dự án Django, tệp bao gồm các thông tin quan trọng về cấu hình của dự án như: Cấu hình cơ sở dữ liệu, các ứng dụng đã cài đặt, static files, tempalte, v.v.

      • Các biến phần tử trong settings.py bao gồm:

        • BASE_DIR: Là biến lưu trữ đường dẫn tuyệt đối tới thư mục gốc của dự án, cung cấp địa chỉ gốc tham khảo khi cần truy cập hoặc làm việc với các đường dẫn trong dự án.

        • SECRET_KEY: Là một khóa bí mật được sử dụng để bảo mật các phiên làm việc của Django. Khóa này được sử dụng để ký các cookie và các bảo mật khác.

        • DEBUG: Là một biến boolean để bật/tắt chế độ DEBUG. Nếu chế độ này được bật, Django sẽ cung cấp các thông tin chi tiết về lỗi, thường được sử dụng trong quá trình phát triển. Dối với môi trường prod, biến này được đặt về False để tránh lộ các thông tin nhạy cảm.

        • ALLOWED_HOSTS: Là một danh sách các tên miền & địa chỉ IP mà Django cấp phép được truy cập vào ứng dụng web được phát triển.

        • INSTALLED_APPS: Là một danh sách các ứng dụng con của dự án mà bạn cài đặt & sử dụng trong dự án. Bạn có thể tạo hoặc thêm các ứng dụng bên ngoài vào danh sách này.

        • MIDDLEWARE: Là danh sách các lớp middleware cho phép Django xử lý các yêu cầu http tuần tự, chẳng hạn như bảo mật, xác thực người dùng, xử lý lỗi, v.v

        • ROOT_URLCONF: Là tên module Python chứa các URL patterns của toàn bộ dự án, Django sẽ dựa vào module cấu hình này để xác định các URL nào sẽ được xử lý từ tệp urls.py

        • TEMPLATES: Django sử dụng template để tạo ra giao diện người dùng từ dữ liệu, biến này bao gồm các cấu hình liên quan đến template của Django.

        • WSGI_APPLICATION: Định nghĩa vị trí của ứng dụng WSGI cho dự án, giúp triển khai dự án Django trên máy chủ web.

        • DATABASES: Chứa các cấu hình về cơ sở dữ liệu cho dự án Django. Theo mặc định, Django sẽ sử dụng SQLite để lưu trữ dữ liệu trong quá trình phát triển, tuy nhiên bạn có thể tùy chỉnh nó để thay đổi cách dữ liệu của dự án được lưu trữ theo lựa chọn cá nhân.

        • AUTH_PASSWORD_VALIDATORS: Là danh sách các lớp validator cho mật khẩu c ủa người dùng.

        • LANGUAGE_CODE & TIME_ZONE: Hai biến cấu hình ngôn ngữ và múi giờ của dự án

        • STATIC_URL: Cấu hình cho Django biết nơi để tìm các tệp tĩnh trong dự án, nó thường được set là thư mục static/ trong dự án.

    • urls.py: Định nghĩa các đường dẫn URL của dự án.

    • asgi.py: Tệp cấu hình phục vụ ứng dụng bất đồng bộ với ASGI.

    • wsgi.py: Cấu hình phục vụ ứng dụng đồng bộ với WSGI.

Để chạy dự án Django vừa được khởi tạo phía trên, bạn sử dụng câu lệnh sau trong shell:

$ python manage.py runserver

Bây giờ nếu không có lỗi xảy ra, dự án đã được khởi chạy trên cổng mặc định 8000, bạn có thể mở trình duyệt và vào http://127.0.0.1:8000/để xem trang web mặc định của Django.

Last updated