I'm building a workflow manager for our organisation and decided to give Django a try. In about 1 hour, I was able to start creating a very basic model for 'projects' app.
------------------------------------------------------------------------------------------------- from django.db import models from django.contrib.auth.models import User # Create your models here. PROJECT_STATUS = ( ('1', 'added'), ('2', 'planned'), ('3', 'started'), ('4', 'on hold'), ('5', 'reopened'), ('6', 'completed'), ('7', 'archived'), ('0', 'trashed') ) ISSUE_KINDS = ( ('1', 'task'), ('2', 'enhancement'), ('3', 'defect'), ('4', 'other') ) PRIORITIES = ( ('1', 'lowest'), ('2', 'low'), ('3', 'normal'), ('4', 'high'), ('5', 'highest') ) class Category(models.Model): name = models.CharField('category name', maxlength=255, core=True, blank=False) description = models.TextField('category description', blank=True) creator = models.ForeignKey(User, related_name='creator') date_added = models.DateTimeField('date added', auto_now_add=True) date_modified = models.DateTimeField('last modified', auto_now=True) class Meta: db_table = 'project_categories' verbose_name = 'Category' verbose_name_plural = 'Categories' class Admin: search_fields = ('name', 'description') list_display = ('name', 'description', 'creator', 'date_added', 'date_modified') def __repr__(self): return self.name class Project(models.Model): category = models.ForeignKey(Category, related_name='category') name = models.CharField('project name', maxlength=255, core=True, blank=False) description = models.TextField('project description', blank=False) leader = models.ForeignKey(User, related_name='leader') date_start = models.DateTimeField('start date', blank=False) date_end = models.DateTimeField('end_date', blank=False) date_added = models.DateTimeField('date added', auto_now_add=True) date_modified = models.DateTimeField('last modified', auto_now=True) current_status = models.PositiveSmallIntegerField('current status', choices=PROJECT_STATUS) class Meta: db_table = 'projects' class Admin: pass def __repr__(self): return self.name class Team(models.Model): name = models.CharField('team name', maxlength=100) project = models.ForeignKey(Project, related_name='project') member = models.ForeignKey(User, related_name='member') role = models.CharField('member role', maxlength=100) class Meta: db_table = 'project_teams' class Admin: pass def __repr__(self): return self.name class Message(models.Model): sender = models.ForeignKey(User) # should be a team member recepient = models.ManyToManyField(User) #should be a team member subject = models.CharField('subject', maxlength=255, core=True, blank=False) priority = models.SmallIntegerField('issue priority', choices=PRIORITIES) body = models.TextField('message body', blank=False) date_written = models.DateTimeField('date_written', auto_now_add=True) date_modified = models.DateTimeField('last modified', auto_now=True) class Meta: db_table = 'project_messages' def __repr__(self): return self.subject --------------------------------------------------------------------------------------------------------------- I want to create a project team from Users and related to a Project. What would be a conventional way to represent that realtionship in the model, so for example messages can be related to project team members and not all users? Hope I make sense here. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users -~----------~----~----~----~------~----~------~--~---