vault backup: 2025-04-29 08:12:08
This commit is contained in:
@@ -124,6 +124,8 @@ La faille de sécurité a malheureusement pu être exploitée par un hacker du n
|
||||
L'entreprise utilise l'ORM Peewee pour contrôler sa base de donnée et le model qui nous intéresse est défini comme suit:
|
||||
|
||||
```python
|
||||
from datetime import date
|
||||
|
||||
class User(Model):
|
||||
name = CharField() # Nom d'utilisateur
|
||||
date_created = DateField() # Date de création du compte
|
||||
@@ -137,15 +139,35 @@ On vous demande donc le code Python nécessaire pour effectuer les actions suiva
|
||||
|
||||
Vous devez `print` toutes les instances de `User` dont le nom est égal à "clown".
|
||||
|
||||
```python
|
||||
for user in User.select().where(User.name == "clown"):
|
||||
print(user)
|
||||
```
|
||||
|
||||
### Exercice 6
|
||||
|
||||
#### 1 point max.
|
||||
|
||||
On a de bonne raison de penser que l'utilisateur a créé un compte dans la base de donnée juste avant l'attaque. Il faudrait récupérer le `User` dont la date de création du compte correspond à la date de l'attaque afin de pouvoir le retrouver.
|
||||
|
||||
```python
|
||||
hacker = User.get(User.date_created=date(2025, 4, 17))
|
||||
```
|
||||
|
||||
_équivalent à_
|
||||
|
||||
```python
|
||||
hacker = User.select().where(User.date_created=date(2025, 4, 17)).get()
|
||||
```
|
||||
|
||||
|
||||
### Exercice 7
|
||||
|
||||
#### 1 point max.
|
||||
#### 2 point max.
|
||||
|
||||
Vous devez à présent supprimer toutes les instances de `User` dont le nom est égal à "clown". Bonus si vous le faites en une seule ligne.
|
||||
|
||||
```python
|
||||
for user in User.select().where(User.name == "clown"):
|
||||
user.delete_instance()
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user