Skip to content

Instantly share code, notes, and snippets.

@vitorfs
Last active October 1, 2017 16:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vitorfs/9524eb42005697fbb79836285b50b1f4 to your computer and use it in GitHub Desktop.
Save vitorfs/9524eb42005697fbb79836285b50b1f4 to your computer and use it in GitHub Desktop.
from django.contrib.auth.models import User
from django.db import models
from django.utils.text import Truncator
class Board(models.Model):
name = models.CharField(max_length=30, unique=True)
description = models.CharField(max_length=100)
def __str__(self):
return self.name
class Topic(models.Model):
subject = models.CharField(max_length=255)
last_updated = models.DateTimeField(auto_now_add=True)
board = models.ForeignKey(Board, related_name='topics')
starter = models.ForeignKey(User, related_name='topics')
def __str__(self):
return self.subject
class Post(models.Model):
message = models.TextField(max_length=4000)
topic = models.ForeignKey(Topic, related_name='posts')
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(null=True)
created_by = models.ForeignKey(User, related_name='posts')
updated_by = models.ForeignKey(User, null=True, related_name='+')
def __str__(self):
truncated_message = Truncator(self.message)
return truncated_message.chars(30)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment