generated from mwc/lab_subrosa
30 lines
693 B
Python
30 lines
693 B
Python
from banjo.models import (
|
|
Model,
|
|
StringField,
|
|
ForeignKey,
|
|
BooleanField,
|
|
)
|
|
|
|
class User(Model):
|
|
name = StringField(unique=True)
|
|
public_key = StringField()
|
|
|
|
def to_dict(self):
|
|
return {
|
|
'name': self.name,
|
|
'public_key': self.public_key,
|
|
}
|
|
|
|
class Message(Model):
|
|
sender = ForeignKey(User, related_name="messages_sent")
|
|
recipient = ForeignKey(User, related_name="messages_received")
|
|
ciphertext = StringField()
|
|
read = BooleanField()
|
|
|
|
def to_dict(self):
|
|
return {
|
|
'sender': self.sender.name,
|
|
'recipient': self.recipient.name,
|
|
'ciphertext': self.ciphertext,
|
|
}
|