urcm
urcm

Reputation: 2284

Django Haystack foreignkey relationship

i have model like this:

class Photo(ImageModel):
    title = models.CharField(_('Title'), max_length=100, unique=True)
    title_slug = models.SlugField(_('slug'), unique=True)   
    name = models.CharField(max_length=50, verbose_name="Name", blank=True)


class GroupUpload(ImageModel):
    title = models.CharField(verbose_name="Group Name", max_length=75)
    date_added = models.DateTimeField(verbose_name="Date Added", 
            default=datetime.now, editable=False)
    caption = models.TextField(verbose_name="Caption", blank=True)        
    photos = models.ManyToManyField('Photo', related_name='+', 
          verbose_name=_('F'),null=True, blank=True, through='GroupuploadPhotos')

my Search Index:

class PostIndex(indexes.RealTimeSearchIndex, indexes.Indexable): 
    text = indexes.CharField(document=True, use_template=True)     
    date_added = indexes.DateTimeField(model_attr='date_added')

    def get_model(self):
        return Photo

    def index_queryset(self):
        return self.get_model().objects.filter(date_added__lte=
                                                    datetime.datetime.now())

now i want to get object of GroupUpload which has relation with Photo. with this defination i am getting only Photo object not related object in GroupUpload. i have checked doc. but havent solved yet.

Upvotes: 4

Views: 1354

Answers (1)

user1593705
user1593705

Reputation:

if you drop the related_name='+' in your class GroupUpload, what's happened ?

UPDATE:

Why not set related_name='group_uploads' and use photo.group_uploads.all() (or if it as haystack SearchResult - result.object.group_uploads.all())?

regards

Upvotes: 3

Related Questions