entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

¿ buscador con django y ajax?

0
votar en contra
favorito

tengo el siguiente problema, actualmente hago filtrado de datos pero al momento de buscar tengo que dar enter para realizar la búsqueda, y colocar exactamente el nombre como esta alojado en la base de datos, lo que quiero lograr es que no importa el texto que coloque en el buscador, que al momento de estar escribiendo me arroje los resultados sea en minúsculas o mayúsculas. un buscador tipo google...

me imagino que es con ajax el problema que aun soy algo novato para usar ajax. saludo espero me puedan ayudar

view.py

class RBMidentificadorListView(ListView):
model = Identificador
template_name = 'identificadores/lista.html'
context_object_name = 'lista_identificador'

def get_context_data(self, **kwargs):
    ctx = super(RBMidentificadorListView, self).get_context_data(**kwargs)
    ctx['search_url'] = 'listar_identificador'
    return ctx

def get_queryset(self):
    queryset = super(RBMidentificadorListView, self).get_queryset()
    # En el admin_base.jade tenemos un input#search(name='q', type='search')
    # usamos la sig linea para obtener la consulta solicitada.
    q = self.request.GET.getlist('q')
    terms = [term for term in q]
    if q:  # Si el campo no esta vacio, construimos el filtro
        queryset = reduce(operator.or_,
                          (Identificador.objects.filter(Q(clave__contains=t) \
                                                        | Q(nombre__contains=t))
                            for t in terms
                            )
                          )
    return queryset

urls.py

url(r'^list/$', RBMidentificadorListView.as_view(), name='listar_identificador'),

**html**
{% if search_url %}
            <li> <!-- solo donde se tengan registros-->
              <form action='{% url search_url %}' method='GET'>
                <div class="input-field">
                  <input id="search" type="search" name='q'>
                  <label for="search"><i class="material-icons">search</i></label>
                  <i class="material-icons">close</i>
                </div>
              </form>
            </li>
          {% endif %} 

1voto

x4mp73r comentado

Revisa este tuto, al parecer es exactamente lo que buscas:

AJAX Autocomplete Search With Django and jQuery

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta