python - django taggit prevent overlapping tags across different models -


i have 2 different models.

class messagearchive(models.model):     from_user = models.charfield(null=true, blank=true, max_length=300)     archived_time = models.datetimefield(auto_now_add=true)     label = models.foreignkey(messagelabel, null=true, blank=true)     archived_by = models.foreignkey(orgstaff)     tags = taggablemanager() 

now say, have defined spam, todo, urgent tags messages.

and have model:

class personarchive(models.model):         from_user = models.charfield(null=true, blank=true, max_length=300)         archived_time = models.datetimefield(auto_now_add=true)         label = models.foreignkey(messagelabel, null=true, blank=true)         archived_by = models.foreignkey(orgstaff)         tags = taggablemanager() 

i define awesome, legend, rockstar model person. there might few more defined.

as quite clear, not want tags person , message overlap. how should achieve that? thanks!

you can utilize limit_choices_to feature on foreignkeyfields , manytomanyfields. models.py file might this:

class personarchive(models.model):     tags_field = models.manytomanyfield(tag, related_name="people_archives", limit_choices_to={'message_archives__isnull': true})  class messagearchive(models.model):     tags_field = models.manytomanyfield(tag, related_name="message_archives", limit_choices_to={'people_archives__isnull': true}) 

Comments

Popular posts from this blog

ios - UICollectionView Self Sizing Cells with Auto Layout -

node.js - ldapjs - write after end error -

DOM Manipulation in Wordpress (and elsewhere) using php -