django-autor jest aplikacja Django wykorzystywane do aktualizacji autora i updated_by polach automatycznie request.user kiedy model stworzył / zmianie.
Także, jeśli jesteś zbyt leniwy, aby napisać autor = models.ForeignKey (użytkownika, _ ("Autor"), related_name ...) do każdego modelu, wystarczy dodaćwith_author dekorator na górę klasy sprawia, że jesteś szczęśliwy.
Zainstaluj
Ta biblioteka jest PyPI więc można go zainstalować z:
pip zainstalować django-autor
lub z github:
pip install git + https: //github.com/lambdalisue/django-author.git
Zastosowanie
1. Dodaj 'Autor' do INSTALLED_APPS na settings.py
2. Dodaj "author.middlewares.AuthorDefaultBackendMiddleware" do MIDDLEWARE_CLASSES jeśli używasz domyślnego autora backend
3. Dodaj autora i pole updated_by do modeli, które chcesz mieć autora i updated_by pola ręcznie lub skorzystaćwith_author dekorator, jak poniżej:
& Nbsp; z django.db modeli importowych
& Nbsp; z author.decorators importować with_author
& Nbsp;with_author
& Nbsp; klasy Entry (models.Model):
& Nbsp; title = models.CharField ("Tytuł", max_length = 50)
& Nbsp; body = models.TextField ("organ")
4. Gotowe. Teraz zostały automatycznie zaktualizowane pola autorem i updated_by
& Nbsp; Jeśli jesteś w truble, patrz author_test katalog dla próbki użytkowania.
Ustawienia
AUTHOR_BACKEND
& Nbsp; Klasa lub ścieżka ciąg zaplecza. backend służy do określenia użytkownika, gdy obiekt jest utworzony / aktualizowana.
AUTHOR_CREATED_BY_FIELD_NAME
& Nbsp; nazwa pola. Ustawienie również interfer nazwę pola utworzone przezwith_author dekoratora. Domyślnie jest to "autor"
AUTHOR_UPDATED_BY_FIELD_NAME
& Nbsp; nazwa pola. Ustawienie również interfer nazwę pola utworzone przezwith_author dekoratora. Domyślnie jest to "updated_by"
AUTHOR_DO_NOT_UPDATE_WHILE_USER_IS_NONE
& Nbsp; Nie aktualizuj autora lub pole updated_by po wykryciu użytkownika jest Brak. Domyślnie jest to prawda
AUTHOR_MODELS
& Nbsp; Sprawdź sygnały tylko dla tych modeli. domyślnym jest Brak
AUTHOR_IGNORE_MODELS
& Nbsp; Nie należy sprawdzić sygnały dla tych modeli. Domyślnie jest to ['auth.user "," auth.group "," auth.permission "," contenttype.contenttype']
backend
W domyślnym silnikiem ruchu thread_locals storategy uzyskać aktualny wniosek w zaproszeniu sygnału.
Jeśli chcesz zmienić strategię lub cokolwiek, tworzyć własne zaplecza.
Backend jest klasa, która posiada metodę get_user do określenia bieżącego użytkownika.
AuthorDefaultBackend
& Nbsp; domyślnym silnikiem. Backend to powrót Brak gdy żaden wniosek znaleziony lub AnonymousUser stworzyć / zaktualizować obiekt.
AuthorSystemUserBackend
& Nbsp; backend użytkownika systemu. Ten powrót zaplecza dla użytkownika system, gdy żaden wniosek znaleziony lub AnonymousUser stworzyć / zaktualizować obiekt.
& Nbsp; Użytkownik systemu jest określona metodą get_system_user i domyślnie jest User.objects.get (pk = 1)
Wymagania :
- Python
- Django
Komentarze nie znaleziono