Dowiedz się, jak skutecznie aktywować tryb konserwacji w aplikacji Django, zapewniając jednocześnie bezproblemowe działanie użytkownikom.

Przełączenie aplikacji Django w tryb konserwacji jest kluczowe podczas przeprowadzania aktualizacji, rozwiązywania problemów technicznych lub wprowadzania znaczących zmian w aplikacji.

Tymczasowo ograniczając dostęp użytkownika i wyświetlając stronę konserwacji, możesz przekazywać ważne komunikaty, zapewnić płynny proces aktualizacji i zapobiegać potencjalnym konfliktom lub utracie danych.

Niezależnie od tego, czy jesteś programistą, czy administratorem systemu, zrozumienie, jak zaimplementować tryb konserwacji w Django, umożliwi Ci utrzymanie niezawodnej i przyjaznej dla użytkownika aplikacji.

Jak korzystać z pakietu Django-Maintenance-Mode

Dzięki szerokiemu wsparciu społeczności, Django oferuje szeroką gamę pakietów, które mogą znacznie usprawnić proces programowania, umożliwiając szybszą i wydajniejszą pracę. Te pakiety zmniejszają ciężar powtarzalnych zadań, zapewniając płynniejsze działanie programisty.

instagram viewer

Jednym z pakietów dostarczanych przez Django jest tryb konserwacji django pakiet, którego możesz użyć do przełączenia aplikacji Django w tryb konserwacji. The tryb konserwacji django pakiet działa, wyświetlając stronę dla 503Kod stanu HTTP. Możesz użyć tryb konserwacji django w swojej aplikacji, wykonując następujące czynności.

Krok 1: Zainstaluj tryb Django-Maintenance-Mode w swoim środowisku wirtualnym

  1. W Twoim wirtualne środowisko projektu, zainstaluj pakiet za pomocą menedżera pakietów pip Pythona. Uruchom to polecenie w swoim interfejs wiersza poleceń (CLI):
    pip zainstaluj tryb konserwacji django
  2. Po zainstalowaniu pakietu dodaj tryb konserwacji do ZAINSTALOWANE_APLIKACJE lista w Twoim ustawienia.py plik:
    ZAINSTALOWANE_APLIKACJE = [
    # niektóre inne aplikacje,
    'tryb konserwacji',
    ]
  3. Następnie Dodaj oprogramowanie pośredniczące dla tryb konserwacji django do OPROGRAMOWANIE ŚREDNIE lista w Twoim ustawienia.py plik:
    OPROGRAMOWANIE ŚREDNIE = [
    # inne oprogramowanie pośredniczące od Django,
    'maintenance_mode.middleware. Tryb konserwacjiOprogramowanie pośrednie',
    ]

Krok 2: Utwórz szablon HTML, aby wyświetlić komunikat trybu konserwacji

Dla tryb konserwacji django package, aby wyświetlić stronę błędu 503, szuka pliku 503.html plik szablonu w formacie szablony informator. Aby to skonfigurować, wykonaj następujące czynności:

  1. Utwórz folder o nazwie szablony w twoim katalogu głównym.
  2. Otwórz nowo utworzony szablony folder i utwórz plik o nazwie 503.html.
  3. W Twoim ustawienia.py plik, znajdź plik SZABLONY ustawienia i skonfiguruj DIRS lista w nim w ten sposób:
    „DIRS”: [BASE_DIR/„szablony”],
  4. Otwórz swoje 503.html plik i napisz kod HTML, aby wyświetlić komunikat o błędzie dla użytkowników. Oto prosty kod, którego możesz użyć:
    HTML>
    <HTML>
    <głowa>
    <metazestaw znaków=„UTF-8”>
    <tytuł>503 Usługa niedostępnatytuł>
    <styl>
    ciało {
    rodzina czcionek: Arial, bezszeryfowa;
    kolor tła: #f5f5f5;
    margines: 0;
    wypełnienie: 0;
    }

    .kontener-503 {
    maksymalna szerokość: 600 pikseli;
    margines: automatyczny 100px;
    wyrównanie tekstu: środek;
    }

    h1 {
    rozmiar czcionki: 48px;
    kolor: #333333;
    margines dolny: 20px;
    }

    P {
    rozmiar czcionki: 18px;
    kolor: #666666;
    margines dolny: 30px;
    }

    .btn-503 {
    wyświetlanie: blok liniowy;
    wypełnienie: 12px 24px;
    kolor tła: #007bff;
    kolor: #ffffff;
    dekoracja tekstu: brak;
    promień obramowania: 4px;
    rozmiar czcionki: 18px;
    }
    styl>
    głowa>
    <ciało>
    <dzklasa = "kontener-503">
    <h1>503 Usługa niedostępnah1>
    <P>
    Ups! Obecnie pracujemy nad niektórymi aktualizacjami.
    Przepraszamy za niedogodności i dziękujemy za cierpliwość.
    P>
    <P>Odwiedź witrynę później lub skontaktuj się z naszym zespołem pomocy technicznejP>
    <Ahref = "mailto: [email protected]"klasa = "btn-503">
    Skontaktuj się z pomocą techniczną
    A>
    dz>
    ciało>
    HTML>

Krok 3: Włącz tryb konserwacji i uruchom ponownie serwer

W Twoim ustawienia.py dodaj ten kod, aby włączyć tryb konserwacji:

TRYB KONSERWACJI = PRAWDA

Zrestartuj serwer programistyczny, uruchamiając to w interfejsie CLI:

python Manage.py serwer uruchomieniowy

Gdy przejdziesz do swojej witryny, zobaczysz utworzoną przez siebie stronę konserwacji.

Jak zignorować stronę administracyjną w trybie konserwacji Django

Aby Twoja witryna administracyjna działała nawet w trybie konserwacji, tryb konserwacji django udostępnia ustawienie tzw MAINTENANCE_MODE_IGNORE_ADMIN_SITE. Powinieneś dodać to ustawienie w swoim ustawienia.py plik i ustaw go na PRAWDA:

MAINTENANCE_MODE_IGNORE_ADMIN_SITE = PRAWDA

Wartość domyślna powyższego ustawienia to FAŁSZ; w związku z tym strona trybu konserwacji będzie miała wpływ na witrynę administracyjną, jeśli jej nie ustawisz PRAWDA.

Jak zignorować określony widok oparty na funkcjach w trybie konserwacji Django

The tryb konserwacji django pakiet zawiera dekorator, który zapobiega wyświetlaniu określonego widoku lub strony — na przykład O stronie Twojej witryny — od przejścia w tryb konserwacji. Aby to zrobić, najpierw zaimportuj dekorator do swojego wyświetlenia.py moduł:

z tryb_konserwacji.dekoratory import force_maintenance_mode_off

Po zaimportowaniu dekoratora dodaj go do swojego widoku w następujący sposób:

@force_maintenance_mode_off
poknazwa_widoku(wniosek):
# wykonaj logikę widoku
# nigdy nie zwracaj odpowiedzi 503

Po prawidłowym zaimplementowaniu dekoratora adres URL tego konkretnego widoku stanie się dostępny dla użytkowników.

Jak zignorować określony widok oparty na klasach w trybie konserwacji Django

Ignorowanie widoku opartego na klasach jest podobne do ignorowania widoku opartego na funkcjach. Jednak najlepszym sposobem jest zrobienie tego w urls.py plik.

Najpierw musisz zaimportować plik force_maintenance_mode_off dekorator w Twojej aplikacji urls.py plik. Następnie musisz uwzględnić go w ścieżce adresu URL. Oto przykład:

z tryb_konserwacji.dekoratory import force_maintenance_mode_off
z .wyświetlenia import Twój widok

wzorce adresów URL = [
# nigdy nie zwracaj odpowiedzi 503
ścieżka('', force_maintenance_mode_off (YourView.as_view()), name='mój widok'),
]

Upewnij się, że importujesz również inne niezbędne rzeczy, takie jak ścieżka i twój widok oparty na klasach.

Jak włączyć tryb konserwacji dla określonego widoku opartego na funkcjach

  1. Aby włączyć tryb konserwacji dla pojedynczego widoku, najpierw wyłącz tryb konserwacji w swoim ustawienia.py plik, wykonując to:
    TRYB KONSERWACJI = FAŁSZ
  2. Dalej w twoim wyświetlenia.py, powinieneś zaimportować force_maintenance_mode_on decorator i dodaj go do swojego widoku:
    z tryb_konserwacji.dekoratory import force_maintenance_mode_on

    @force_maintenance_mode_on
    poknazwa_widoku(wniosek):
    # Wykonaj logikę widoku
    # Zawsze zwracaj odpowiedź 503

Jak włączyć tryb konserwacji dla określonego widoku opartego na klasach

  1. Po pierwsze, powinieneś wyłączyć tryb konserwacji w swoim ustawienia.py plik:
    TRYB KONSERWACJI = FAŁSZ
  2. Dalej w twoim urls.py, należy zaimportować plik force_maintenance_mode_on decorator i dodaj go do wymaganej ścieżki adresu URL:
    z tryb_konserwacji.dekoratory import force_maintenance_mode_on
    z .wyświetlenia import Twój widok

    wzorce adresów URL = [
    # Zawsze zwracaj odpowiedź 503
    ścieżka('', force_maintenance_mode_on (YourView.as_view()), name='mój widok'),
    ]

Jak używać innej nazwy szablonu w trybie konserwacji Django

Domyślnie tryb konserwacji django pakiet szuka a szablony/503.html szablon. Możesz zdecydować o zastąpieniu tego w pliku ustawienia.py plik.

Załóżmy, że masz osobny folder do obsługi błędów w swojej aplikacji; będziesz chciał dołączyć swoje 503.html szablon w tym folderze. Więc twój szablon będzie w środku szablony/błędy/503.html.

Domyślne ustawienie dla tej konfiguracji jest następujące:

MAINTENANCE_MODE_TEMPLATE = "503.html"

Aby go zastąpić, należy dodać inną ścieżkę wskazującą na stronę błędu. Oto przykład:

MAINTENANCE_MODE_TEMPLATE = „błędy/503.html”

Możesz także zmienić nazwę pliku, jeśli chcesz, a wszystko będzie działać dobrze, jeśli dodasz niezbędne konfiguracje.

Oprócz powyższych konfiguracji, tryb konserwacji django pakiet zawiera inne interesujące konfiguracje, które pomogą Ci dostosować tryb konserwacji aplikacji do konkretnych potrzeb. Możesz przeczytać o tych konfiguracjach w dokumentacja trybu konserwacji django.

Korzystaj z trybu konserwacji, aby zapewnić bezproblemowe aktualizacje i lepsze wrażenia użytkownika w swojej aplikacji

Wykorzystanie trybu konserwacji w aplikacji może ułatwić pracę Tobie i Twoim użytkownikom. Tymczasowo wyłączając dostęp do całości lub części aplikacji na czas aktualizacji lub prac konserwacyjnych, możesz zminimalizować zakłócenia i błędy, które mogą wynikać z jednoczesnych interakcji użytkowników.

Korzystanie z trybu konserwacji nie tylko umożliwi wydajne przeprowadzanie niezbędnych aktualizacji, ale także świadczy o zaangażowaniu w zapewnienie płynnego i nieprzerwanego działania użytkownikom.

Oprócz trybu konserwacji możesz również udostępnić niestandardowe szablony dla innych błędów w Django.