מי מבקר
חלק מהיחידה משתמשים וחשבונות במסלול ה-Django של Coddy. שיעור 1 מתוך 16.
כל מי שפותח את אפליקציית הפתקים הזו רואה את כל הפתקים. כדי שלכל אדם יהיו פתקים משלו, האתר צריך קודם לדעת מי מבקר בו.
האפליקציה של Django, django.contrib.auth, מאחסנת חשבונות במודל User: שם משתמש, סיסמה מגובבת, כתובת אימייל. כשמישהו מתחבר, Django זוכר אותו באמצעות הפעלה: עוגייה, ערך קטן שהדפדפן שולח בחזרה עם כל בקשה ומפנה לשורה בשרת.
בכל בקשה, Django מציב את המבקר ב-request.user, והתבניות מקבלות אותו בתור user. מבקר שלא התחבר הוא AnonymousUser, לכן בודקים באמצעות is_authenticated. חנות מציגה כרזה רק למבקרים:
{% if not user.is_authenticated %}
<p class="banner">Make an account to save your cart.</p>
{% endif %}אתגר
קלב־base.html, בתוך <div class="account">:
- משתמש מחובר רואה את
Signed in asואת שם המשתמש שלו, למשלSigned in as ada. - כל השאר רואים את
You are not signed in.
לחצו על Run ופתחו את /. לאחר מכן התחברו ב־/admin/ בתור ada (סיסמה coddy-pass-123) ופתחו שוב את /.
נסו בעצמכם
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>{% block title %}Notes{% endblock %}</title>
<link rel="stylesheet" href="{% static 'notes/style.css' %}">
</head>
<body>
<header>
<a class="brand" href="{% url 'notes:list' %}">Notes</a>
<nav>
<a href="{% url 'notes:create' %}">New note</a>
</nav>
<div class="account">
</div>
</header>
<main>
{% block content %}{% endblock %}
</main>
</body>
</html>
כל השיעורים ביחידה משתמשים וחשבונות
תרגלו בעצמכם: Django אונליין