Bernardo Augusto García Loaiza
PreguntaEstoy utilizando
apache-solrCuando quiero generar mis índices con
python manage.py rebuild_index<code> WARNING: This will irreparably remove EVERYTHING from your search index in connection 'default'. Your choices after this are to restore from backups or rebuild via the `rebuild_index` command. Are you sure you wish to continue? [y/N] y Removing all documents from your index because you said so. All documents removed. Indexing 1 lodging offers Failed to add documents to Solr: Solr responded with an error (HTTP 400): [Reason: ERROR: [doc=hosts.lodgingoffer.35] Error adding field 'ad_title'='Apartamento multifamiliar' msg=For input string: "Apartamento multifamiliar"] Traceback (most recent call last): File "/home/bgarcial/.virtualenvs/ihost/lib/python3.5/site-packages/haystack/backends/solr_backend.py", line 73, in update self.conn.add(docs, commit=commit, boost=index.get_field_weights()) File "/home/bgarcial/.virtualenvs/ihost/lib/python3.5/site-packages/pysolr.py", line 891, in add overwrite=overwrite, handler=handler) File "/home/bgarcial/.virtualenvs/ihost/lib/python3.5/site-packages/pysolr.py", line 478, in _update return self._send_request('post', path, message, {'Content-type': 'text/xml; charset=utf-8'}) File "/home/bgarcial/.virtualenvs/ihost/lib/python3.5/site-packages/pysolr.py", line 393, in _send_request raise SolrError(error_message % (resp.status_code, solr_message)) pysolr.SolrError: Solr responded with an error (HTTP 400): [Reason: ERROR: [doc=hosts.lodgingoffer.35] Error adding field 'ad_title'='Apartamento multifamiliar' msg=For input string: "Apartamento multifamiliar"] (ihost) bgarcial@elpug ‹ testing ●● › : ~/workspace/ihost_project [0] %
Estoy usando
solr-6.6.0Haystackschema.xml<code> <field name="ad_title" type="text_en" indexed="true" stored="true" multiValued="false" /> <field name="text" type="text_en" indexed="true" stored="true" multiValued="false" />
Quisiera resaltar que en mi archivo
solrconfig.xmlapache-solrEn mi modelo que estoy indexando, el campo
ad_title<code> class LodgingOffer(models.Model): ad_title = models.CharField( null=False, blank=False, max_length=255 )
Mi archivo
search_indexes.py<code> class LodgingOfferIndex(indexes.SearchIndex, indexes.Indexable): text = indexes.CharField(document=True, use_template=True) ad_title = indexes.CharField(model_attr='ad_title', null=True) def get_model(self, using=None): return LodgingOffer def index_queryset(self, using=None): return self.get_model().objects.all()
¿Existe algún problema con el campo el cual es mi índice de búsqueda?
Diego Forero
Revisa el log de apache-solr, porque el error que retorna es 400 que es un bad request, revisando el log de solr puedes detectar cual es el problema exactamente.
