Utilisation de Takashi Otaka, "Apprendre en bougeant! Introduction au développement Python Django" Je suis un débutant qui a commencé à apprendre python et Django. J'étudie la programmation depuis environ 4 mois en utilisant ruby / rails, Quand j'ai changé de travail en tant qu'ingénieur, j'ai décidé d'utiliser python, alors j'ai commencé à étudier avec ce livre d'une main. Puisque je suis un amateur de première classe, je vous serais très reconnaissant si vous pouviez commenter les suppléments et les suggestions.
Comme le before_action que j'ai utilisé pour créer l'application rails, Insérez un processus fixe avant la vue générale spécifiée. Je voulais aussi faire ça avec django.
En particulier,,,, Vérifiez si la session a une valeur spécifique avant d'afficher le modèle dans la vue générique basée sur la classe. → Oui: affichage tel quel → Aucun: rediriger vers l'écran d'index Je veux le traiter.
Si vous pouvez confirmer que vous êtes connecté avec @login_required, Peut-être que je peux faire quelque chose de similaire ...? Non, ça ne peut pas être fait. ↓ Apparemment, "@ ~" est un décorateur. Et après tout, il semble que vous puissiez créer le vôtre.
Cette fois, "s'il y a une valeur spécifique dans la session".
def is_hoge_in_session(func):
def hoge_checker(request):
if 'hoge' in request.session:
return func(request)
else:
return redirect("hogeApp:index")
return hoge_checker
Concernant le contenu du code, je me demande si les explications des grands ancêtres sont faciles à comprendre. ・ [Python] Explication des décorateurs pour les débutants ・ Comment utiliser Decorator dans Django et comment le créer
# method_Décorateur d'importation
from django.utils.decorators import method_decorator
、、、(Omission)、、、
@method_decorator(is_hoge_in_session, name='dispatch')
class HogeFugaView(LoginRequiredMixin, generic.ListView):
、、、(Ce qui suit est omis)
À propos, concernant la gestion des décorateurs de fonctions dans la vue basée sur les classes Nous avons reçu la sagesse du site suivant. [Django] Comment utiliser les décorateurs de fonctions dans les vues basées sur les classes
Le temps qui a été jeté dans la colombe → 2 heures Impressions: → Même si vous êtes débutant, même si vous n'avez pas de senior spécialiste de la langue que vous développez Très bien, j'ai un professeur Google. Le reste est enthousiaste.
Recommended Posts