Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Document:
- def __init__(self, id, category_id, topic_id, file_name):
- self.id = id
- self.category_id = category_id
- self.topic_id = topic_id
- self.file_name = file_name
- self.tags = []
- @classmethod
- def from_instances(cls, id, category: Category, topic: Topic, file_name):
- return cls(id, category.id, topic.id, file_name)
- def add_tag(self, tag_content):
- if tag_content in self.tags:
- return
- self.tags.append(tag_content)
- def remove_tag(self, tag_content):
- if tag_content not in self.tags:
- return
- self.tags.remove(tag_content)
- def edit(self, file_name):
- self.file_name = file_name
- def __repr__(self):
- tags_joined = ', '.join(self.tags)
- return f"Document {self.id}: {self.file_name}; category {self.category_id}, topic {self.topic_id}, tags: {tags_joined}"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement