Cool, thanks Steve.  To make this work I'm assuming you have to specify a
get_absolute_url on the non Displayable models?

On Tue, Oct 28, 2014 at 5:47 PM, Stephen McDonald <[email protected]> wrote:

> You're right the docs don't match the advice I gave around Displayable.
> Reading that, I took a much closer look at why subclassing Displayable is a
> strict requirement for a model being searchable, and I don't think that
> needs to be the case.
>
> I've made the following change which means that the example in the docs
> and the code original posted in this thread should work:
>
>
> https://github.com/stephenmcd/mezzanine/commit/cfc47424a09b51a92fc44eeca3af0ea58ff8ddf9
>
>
>
>
> On Wed, Oct 29, 2014 at 2:03 AM, Josh Cartmell <[email protected]>
> wrote:
>
>> Hey Steve, some of the confusion might come from the docs.  The last
>> example here is almost identical to what Ernesto has done (i.e.
>> search_fields specified on a non Displayable model):
>> https://mezzanine.jupo.org/docs/search-engine.html#search-api
>>
>> Are the docs wrong in that instance, or is something else at play?
>>
>> On Mon, Oct 27, 2014 at 4:21 PM, Ernesto Palafox <
>> [email protected]> wrote:
>>
>>> Thanks for your advice Stephen im trying to make a query but i get an
>>> error:
>>>
>>> FieldError: Cannot resolve keyword u'name' into field. Choices are:
>>> _meta_title, _order, children, content_model, created, description,
>>> expiry_date, form, gallery, gen_description, homepage, id, in_menus,
>>> in_sitemap, keywords, keywords_string, link, login_required, galeria,
>>> pageimage, parent, publish_date, richtextpage, short_url, site, slide,
>>> slug, status, title, titles, updated
>>>
>>> Its like my searchable fields arent recognized. How can i solve this?
>>>
>>> Thanks!
>>>
>>> El lunes, 27 de octubre de 2014 13:45:17 UTC-6, Stephen McDonald
>>> escribió:
>>>>
>>>> The model you want searched needs to subclass Displayable - your Galeria
>>>> model will do that, since it subclasses Page, which subclasses Displayable,
>>>> but your Item model does not.
>>>>
>>>> You need to stop and think about what a search result will look like
>>>> and actually link to, which is the main idea around search being tied to
>>>> the Displayable model - Displayable provides a title and url, which
>>>> search results make use of.
>>>>
>>>> You might end up having your Item descriptions somehow feed into a
>>>> searchable field on your Galeria model, and have it remain the thing that
>>>> is searched and displayed as a distinct search result. Alternatively, it
>>>> might be more suitable to make the Item mode subclass Displayable, with
>>>> each Item having its own title (which would make your "name" field
>>>> redundant) and url. Perhaps the url field on the Item model isn't strictly
>>>> necessary, and you'll need to populate it with the parent Galeria
>>>> instance's url somehow.
>>>>
>>>> You'll need to work out which approach best suits your case, and either
>>>> way you'll probably need to implement some functionality in one of the
>>>> model's "save" methods in order to populate some data in the other.
>>>>
>>>> Good luck!
>>>>
>>>> On Tue, Oct 28, 2014 at 5:37 AM, Ernesto Palafox <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi all, im new to mezzanine and I think its awesome.
>>>>>
>>>>> I am trying to follow the documentation http://
>>>>> mezzanine.jupo.org/docs/search-engine.html to made searchable my
>>>>> custon contentype
>>>>>
>>>>> My models.py looks more or less like this:
>>>>>
>>>>>
>>>>> class Galeria(Page):
>>>>> pass
>>>>> class Item(models.Model):
>>>>>
>>>>> gallery = models.ForeignKey(Galeria, related_name="gallery")
>>>>> name = models.CharField(max_length=30)
>>>>> description_1 = RichTextField(blank=True,null=True)
>>>>>  objects = SearchableManager()
>>>>> search_fields = ("name", "description_1" )
>>>>>
>>>>>
>>>>> I also have {%search_form "galeria.Item" %}.
>>>>>
>>>>>
>>>>> However, when i try the search, it returns me nothing. ¿What am i
>>>>> doing wrong?
>>>>>
>>>>>
>>>>>  --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Mezzanine Users" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Stephen McDonald
>>>> http://jupo.org
>>>>
>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "Mezzanine Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Mezzanine Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
>
> --
> Stephen McDonald
> http://jupo.org
>
> --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to