0
votes

Page de profil spécifique à l'utilisateur avec fonctionnalité CRUD à Django

Je suis un débutant Django et depuis quelques semaines, j'ai suivi des tutoriels fondamentaux sur la création d'applications avec la connexion de l'utilisateur, la déconnexion et la fonctionnalité d'authentification. Dans chaque didacticiel, la fonctionnalité CRUD est activée sur tous les utilisateurs, mais le contenu est agrégé sur la page d'accueil de l'application. Par exemple, dans le tutoriel de création de blog, vous pouvez enregistrer un utilisateur, vous connecter à l'application et générer un poteau de blog, cependant, le message de blog est rendu sur la page d'accueil de l'application où tout utilisateur peut afficher ce contenu.

Quelqu'un peut-il me diriger vers une ressource (docs ou didacticiel) qui explique comment créer une page de contenu isolé pour l'utilisateur? Signification, une fois que l'utilisateur enregistre, se connecte et crée un article de blog, il ne remplacera que dans la page "Home '" de l'utilisateur et n'est pas visible (ni modifié) par les autres utilisateurs. Merci.


0 commentaires

3 Réponses :


1
votes

Vous pouvez utiliser les modèles d'affichage génériques de Django pour cela, par exemple. ListView . Et puis vous avez simplement besoin d'écraser get_queryset comme ceci: xxx

Ceci renvoie ensuite tous les objets de l'utilisateur connecté uniquement.

Consultez la documentation pour plus de détails: https://docs.djangoproject.com/fr /3.0/ref/class-based-Views/generic-Display/


0 commentaires

0
votes

Dans votre vue, vous pouvez obtenir l'utilisateur à partir de l'objet de la demande xxx

sur le modèle que vous pouvez itérationner les utilisateurs_posts passés sous forme de contexte


0 commentaires

0
votes

Oui, vous pouvez. Utilisez décorateurs Django forts> dans chaque fonction que vous souhaitez rendre visible à un utilisateur particulier. Par exemple, si vous souhaitez créer une page de tableau de bord visible uniquement à l'utilisateur connecté, faites-le ce xxx pré>

dans l'exemple ci-dessus, nous avons utilisé le décorateur Folliwing P>

@login_required(login_url = "user:login")


0 commentaires