2024 Entrega5 - ucseiw-team/catedra GitHub Wiki
Entrega 5
Búsqueda de texto
- El sitio debe permitir búsqueda de texto completo sobre el contenido del sitio. Tiene que ser posible clickear en los resultados para entrar al contenido encontrado. Pueden elegir qué contenido es buscable, pero debería tener sentido dentro de la comunidad que desarrollaron.
- El sitio debe poseer un robots.txt correctamente configurado para ser accedido por buscadores externos (como google), accesible en la url
DOMINIO_DEL_SITIO.com/robots.txt
, aunque no es necesario que los resultados estén realmente visibles (solo hace falta dejar todo configurado).
Caso especial: entregas en Django y Render.com
Ya que no tenemos un servicio gratuito de motor de búsqueda de texto completo en Render, y que el contenido de los servers es efímero, vamos a necesitar que nos den una url con la cual podamos rebuildear el índice de Whoosh (si planean utilizar otro mecanismo que no sea Haystack+Whoosh, discutamos cómo lo resolverían). Para eso necesitamos que agreguen esta view a sus proyectos:
def rebuild_index(request):
from django.core.management import call_command
from django.http import JsonResponse
try:
call_command("rebuild_index", noinput=False)
result = "Index rebuilt"
except Exception as err:
result = f"Error: {err}"
return JsonResponse({"result": result})
Y que la expongan en la url DOMINIO_DEL_SITIO.com/rebuild_index
. Por ejemplo, con una definición de url de esta forma:
path('rebuild_index/', views.rebuild_index),