/ / Cách đặt ứng dụng Django của bạn ở Chế độ bảo trì

Cách đặt ứng dụng Django của bạn ở Chế độ bảo trì

Đặt ứng dụng Django của bạn ở chế độ bảo trì là rất quan trọng khi thực hiện cập nhật, giải quyết các sự cố kỹ thuật hoặc thực hiện các thay đổi quan trọng đối với ứng dụng của bạn.


Bằng cách tạm thời hạn chế quyền truy cập của người dùng và hiển thị trang bảo trì, bạn có thể truyền đạt các thông báo quan trọng, đảm bảo quá trình cập nhật suôn sẻ và ngăn ngừa các xung đột hoặc mất dữ liệu tiềm ẩn.

Cho dù bạn là nhà phát triển hay quản trị viên hệ thống, việc hiểu cách triển khai chế độ bảo trì trong Django sẽ cho phép bạn duy trì một ứng dụng đáng tin cậy và thân thiện với người dùng.


Cách sử dụng Gói chế độ bảo trì Django

Do có sự hỗ trợ rộng rãi của cộng đồng, Django cung cấp nhiều gói có thể nâng cao đáng kể quy trình phát triển của bạn, cho phép thực hiện công việc nhanh hơn và hiệu quả hơn. Các gói này giảm bớt gánh nặng của các nhiệm vụ lặp đi lặp lại, đảm bảo trải nghiệm mượt mà hơn cho bạn với tư cách là nhà phát triển.

Một trong những gói được cung cấp bởi Django là chế độ bảo trì django gói mà bạn có thể sử dụng để đặt ứng dụng Django của mình ở chế độ bảo trì. Các chế độ bảo trì django gói hoạt động bằng cách hiển thị một trang cho 503 Mã trạng thái HTTP. Bạn có thể dùng chế độ bảo trì django trong ứng dụng của bạn bằng các bước sau.

Bước 1: Cài đặt Django-Maintenance-Mode trong môi trường ảo của bạn

  1. Trong môi trường ảo của dự án, hãy cài đặt gói bằng trình quản lý gói pip của Python. Chạy lệnh này trong giao diện dòng lệnh (CLI) của bạn:
     pip install django-maintenance-mode
  2. Sau khi cài đặt gói, thêm bảo trì_mode đến INSTALLED_APPS danh sách trong của bạn cài đặt.py tài liệu:
     INSTALLED_APPS = [
        
        'maintenance_mode',
    ]
  3. Tiếp theo, thêm phần mềm trung gian cho chế độ bảo trì django đến PHẦN MỀM TRUNG GIAN danh sách trong của bạn cài đặt.py tài liệu:
     MIDDLEWARE = [
        
        'maintenance_mode.middleware.MaintenanceModeMiddleware',
    ]

Bước 2: Tạo Mẫu HTML để Hiển thị Thông báo Chế độ Bảo trì

Cho chế độ bảo trì django gói để hiển thị trang lỗi 503, nó sẽ tìm một 503.html tập tin mẫu trong mẫu danh mục. Để thiết lập điều này, hãy làm như sau:

  1. Tạo một thư mục có tên mẫu trong thư mục gốc của bạn.
  2. Mở bạn mới tạo mẫu thư mục và tạo một tệp có tên 503.html.
  3. trong bạn cài đặt.py tập tin, xác định vị trí MẪU cài đặt và cấu hình các DIRS liệt kê trong đó như thế này:
     'DIRS': [BASE_DIR/'templates'],
  4. mở của bạn 503.html tệp và viết mã HTML để hiển thị thông báo lỗi cho người dùng của bạn. Đây là một mã đơn giản mà bạn có thể sử dụng:
     <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <title>503 Service Unavailable</title>
        <style>
            body {
                font-family: Arial, sans-serif;
                background-color: #f5f5f5;
                margin: 0;
                padding: 0;
            }
            
            .container-503 {
                max-width: 600px;
                margin: 100px auto;
                text-align: center;
            }
            
            h1 {
                font-size: 48px;
                color: #333333;
                margin-bottom: 20px;
            }
            
            p {
                font-size: 18px;
                color: #666666;
                margin-bottom: 30px;
            }
            
            .btn-503 {
                display: inline-block;
                padding: 12px 24px;
                background-color: #007bff;
                color: #ffffff;
                text-decoration: none;
                border-radius: 4px;
                font-size: 18px;
            }
        </style>
    </head>
    <body>
        <div class = "container-503">
            <h1>503 Service Unavailable</h1>
            <p>
                Oops! We are currently working on some updates.
                We apologize for the inconvenience and appreciate your patience.
            </p>
            <p>Please visit the website later or contact our support team</p>
            <a href = "mailto:support@yourcompanymail.com" class = "btn-503">
                Contact support
            </a>
        </div>
    </body>
    </html>

Bước 3: Bật Chế độ bảo trì và Khởi động lại máy chủ của bạn

trong bạn cài đặt.py tệp, hãy thêm mã này để bật chế độ bảo trì:

 MAINTENANCE_MODE = True

Khởi động lại máy chủ phát triển của bạn bằng cách chạy cái này vào CLI của bạn:

 python manage.py runserver

Khi điều hướng đến trang web của mình, bạn sẽ thấy trang bảo trì mà bạn đã tạo.

một trang lỗi hiển thị thông báo dịch vụ không khả dụng

Cách bỏ qua trang quản trị trong Chế độ bảo trì Django

Để cho phép trang quản trị của bạn tiếp tục hoạt động ngay cả trong chế độ bảo trì, chế độ bảo trì django cung cấp một cài đặt được gọi là MAINTENANCE_MODE_IGNORE_ADMIN_SITE. Bạn nên thêm cài đặt này vào cài đặt.py tập tin và đặt nó thành ĐÚNG VẬY:

 MAINTENANCE_MODE_IGNORE_ADMIN_SITE = True

Giá trị mặc định của cài đặt trên là SAI; do đó trang quản trị của bạn sẽ bị ảnh hưởng bởi trang chế độ bảo trì nếu bạn không đặt nó thành ĐÚNG VẬY.

Cách bỏ qua chế độ xem dựa trên chức năng cụ thể trong Chế độ bảo trì Django

Các chế độ bảo trì django gói cung cấp một trình trang trí để ngăn một chế độ xem hoặc trang nhất định—chẳng hạn như Về trang của trang web của bạn—từ chuyển sang chế độ bảo trì. Để làm điều này, trước tiên hãy nhập trình trang trí vào lượt xem.py mô-đun:

 from maintenance_mode.decorators import force_maintenance_mode_off

Sau khi nhập trình trang trí, hãy thêm nó vào chế độ xem của bạn như sau:

 @force_maintenance_mode_off
def view_name(request):
    
    

Sau khi triển khai trình trang trí đúng cách, URL cho chế độ xem cụ thể đó sẽ có thể truy cập được đối với người dùng của bạn.

Cách bỏ qua chế độ xem dựa trên lớp cụ thể trong Chế độ bảo trì Django

Bỏ qua chế độ xem dựa trên lớp cũng tương tự như bỏ qua chế độ xem dựa trên chức năng. Tuy nhiên, cách tiếp cận tốt nhất là làm điều đó trong url.py tài liệu.

Trước tiên, bạn cần nhập khẩu force_maintenance_mode_off trang trí trong ứng dụng của bạn url.py tài liệu. Sau đó, bạn cần đưa nó vào đường dẫn URL của mình. Đây là một ví dụ:

 from maintenance_mode.decorators import force_maintenance_mode_off
from .views import YourView

urlpatterns = [
    
    path('', force_maintenance_mode_off(YourView.as_view()), name='my_view'),
]

Đảm bảo bạn cũng nhập những thứ cần thiết khác như con đường và chế độ xem dựa trên lớp của bạn.

Cách bật Chế độ bảo trì cho chế độ xem dựa trên chức năng cụ thể

  1. Để bật chế độ bảo trì cho một chế độ xem, trước tiên, hãy tắt chế độ bảo trì trong cài đặt.py tập tin bằng cách làm điều này:
     MAINTENANCE_MODE = False
  2. Tiếp theo, trong của bạn lượt xem.py, bạn nên nhập force_maintenance_mode_on trang trí và thêm nó vào chế độ xem của bạn:
     from maintenance_mode.decorators import force_maintenance_mode_on

    @force_maintenance_mode_on
    def view_name(request):
        
        

Cách bật Chế độ bảo trì cho chế độ xem dựa trên lớp cụ thể

  1. Trước tiên, bạn nên tắt chế độ bảo trì trong cài đặt.py tài liệu:
     MAINTENANCE_MODE = False
  2. Tiếp theo, trong của bạn url.pybạn nên nhập force_maintenance_mode_on decorator và thêm nó vào đường dẫn URL được yêu cầu:
     from maintenance_mode.decorators import force_maintenance_mode_on
    from .views import YourView

    urlpatterns = [
        
        path('', force_maintenance_mode_on(YourView.as_view()), name='my_view'),
    ]

Cách sử dụng Tên mẫu khác cho Chế độ bảo trì Django

Theo mặc định, các chế độ bảo trì django gói tìm kiếm một mẫu/503.html bản mẫu. Bạn có thể quyết định ghi đè lên điều này trong cài đặt.py tài liệu.

Giả sử bạn có một thư mục riêng để xử lý lỗi trong ứng dụng của mình; bạn sẽ muốn bao gồm của bạn 503.html mẫu trong thư mục này. Vì vậy, mẫu của bạn sẽ ở trong mẫu/lỗi/503.html.

Cài đặt mặc định cho cấu hình này là:

 MAINTENANCE_MODE_TEMPLATE = "503.html"

Để ghi đè lên nó, bạn nên thêm một đường dẫn khác trỏ đến trang lỗi của mình. Đây là một ví dụ:

 MAINTENANCE_MODE_TEMPLATE = "errors/503.html"

Bạn cũng có thể thay đổi tên tệp nếu muốn và mọi thứ sẽ hoạt động tốt nếu bạn thêm các cấu hình cần thiết.

Ngoài các cấu hình trên, chế độ bảo trì django gói cung cấp các cấu hình thú vị khác để giúp bạn tùy chỉnh chế độ bảo trì của ứng dụng theo nhu cầu cụ thể của mình. Bạn có thể đọc về các cấu hình này trong tài liệu chế độ bảo trì django.

Sử dụng Chế độ bảo trì để đảm bảo cập nhật liền mạch và trải nghiệm người dùng nâng cao trong ứng dụng của bạn

Tận dụng chế độ bảo trì trong ứng dụng của bạn có thể giúp bạn và người dùng của bạn làm mọi việc dễ dàng hơn. Bằng cách tạm thời vô hiệu hóa quyền truy cập vào tất cả hoặc một phần ứng dụng của bạn trong các tác vụ cập nhật hoặc bảo trì, bạn có thể giảm thiểu sự gián đoạn và lỗi có thể phát sinh từ các tương tác đồng thời của người dùng.

Sử dụng chế độ bảo trì sẽ không chỉ cho phép bạn thực hiện các cập nhật cần thiết một cách hiệu quả mà còn thể hiện cam kết cung cấp trải nghiệm mượt mà và không bị gián đoạn cho người dùng của bạn.

Ngoài chế độ bảo trì, bạn cũng có thể cung cấp các mẫu tùy chỉnh cho các lỗi khác trong Django.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *