Have you checked out http://code.google.com/p/django-tagging/ ?
On May 28, 12:54 pm, Streamweaver <streamwea...@gmail.com> wrote: > Still hoping someone has some insight here. I've been plugging away > at it and am still not finding an answer I can live with as an > engineer. > > Currently I'm cheating a bit to filter down by only published objects > in my view like so > > tag = get_object_or_404(Tag, slug=slug) > > contentitems = tag.taggeditem_set.all() > > contentlist = [item for item in contentitems if > item.content_object.status == 'P'] > > Obviously this seems a bit sloppy and I'm probably better off putting > this in a custom related manager that catches errors if I'm trying to > filter on fields that a model doesn't have (which could happen in > generic models). > > It doesn't do well at ordering obviously. > > I'm still struggling with this though and am not sure generic tagging > is the way I should be going with this. Still appreciate any insight > out there. > > On May 24, 10:05 am, Streamweaver <streamwea...@gmail.com> wrote: > > > > > I'm trying to implement tagging using Content Types and Generic > > Relationships. What I want to is query any tagged item with a > > status of Published. > > > All my tagged models are implementing an Abstract Model class with a > > status field so they share the 'Published' and 'Unpublished' types. > > > Here are some cut down version of the models I'm using for an > > example. Right now I only have Posts related to Tags but I plan on > > adding flat pages and such. What I want to be able to have pages for > > tags return all content with a status of Published but I don't seem to > > be able to find a way to do this. I can find content and tags just > > fine but when I have to filter it further I'm stumbling and would > > appreciate any insight or pointers to example code. I've seen some > > examples of custom managers online but the folks there are writing > > naked SQL in the managers and I'd like to avoid going that route if I > > can > > > class Tag(models.Model): > > > text = models.CharField(max_length=30, unique=True) > > slug = models.SlugField(max_length=30, unique=True, null=True, > > blank=True) > > > class TaggedItem(models.Model): > > > tag = models.ForeignKey(Tag) > > > content_type = models.ForeignKey(ContentType) > > object_id = models.PositiveIntegerField() > > content_object = generic.GenericForeignKey('content_type', > > 'object_id') > > > class Post(models.Model): > > > title = models.CharField(max_length=75) > > ... > > status = models.CharField(max_length=1, choices=POST_STATUS) > > > topics = generic.GenericRelation(TopicCatalog) > > tags = generic.GenericRelation(TagCatalog) > > > -- > > You received this message because you are subscribed to the Google Groups > > "Django users" group. > > To post to this group, send email to django-us...@googlegroups.com. > > To unsubscribe from this group, send email to > > django-users+unsubscr...@googlegroups.com. > > For more options, visit this group > > athttp://groups.google.com/group/django-users?hl=en. -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-us...@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.