I am getting the following error:

OperationalError at /lista/
(1241, 'Operand should contain 1 column(s)')
Request Method:         POST
Request URL:    http://127.0.0.1:8000/lista/
Exception Type:         OperationalError
Exception Value:        (1241, 'Operand should contain 1 column(s)')
Exception Location:     C:\Python24\Lib\site-packages\MySQLdb
\connections.py in defaulterrorhandler, line 35

Looking through the traceback, the error seems to happen in line 18
here:

C:\Python24\lib\site-packages\django\db\backends\util.py in execute

  12.  self.cursor = cursor
  13. self.db = db # Instance of a BaseDatabaseWrapper subclass
  14.
  15. def execute(self, sql, params=()):
  16. start = time()
  17. try:

  18. return self.cursor.execute(sql, params) ...

  19. finally:
  20. stop = time()
  21. sql = self.db.ops.last_executed_query(self.cursor, sql, params)
  22. self.db.queries.append({
  23. 'sql': sql,
  24. 'time': "%.3f" % (stop - start),

with:

sql     =

u"SELECT DISTINCT
`revistas_articulo`.`id`,`revistas_articulo`.`visible`,`revistas_articulo`.`revista_id`,`revistas_articulo`.`pais`,`revistas_articulo`.`ciudad`,`revistas_articulo`.`titulo`,`revistas_articulo`.`volumen`,`revistas_articulo`.`numero`,`revistas_articulo`.`mes`,`revistas_articulo`.`ano`,`revistas_articulo`.`paginas`,`revistas_articulo`.`categoria`,`revistas_articulo`.`contenido`,`revistas_articulo`.`notas`,`revistas_articulo`.`idioma`,`revistas_articulo`.`descripcion`,`revistas_articulo`.`foto`,`revistas_articulo`.`ilustracion`,`revistas_articulo`.`link`,`revistas_articulo`.`fecha_creacion`,`revistas_articulo`.`fecha_modificacion`,`revistas_articulo`.`imagen`
FROM `revistas_articulo` LEFT OUTER JOIN `revistas_articulo_autores`
AS `m2m_revistas_articulo__autores` ON `revistas_articulo`.`id` =
`m2m_revistas_articulo__autores`.`articulo_id` INNER JOIN
`revistas_autor` AS `revistas_articulo__autores` ON
`m2m_revistas_articulo__autores`.`autor_id` =
`revistas_articulo__autores`.`id` INNER JOIN `revistas_revista` AS
`revistas_articulo__revista` ON `revistas_articulo`.`revista_id` =
`revistas_articulo__revista`.`id` WHERE ((`revistas_articulo`.`titulo`
LIKE %del% OR `revistas_articulo__autores`.`nombre` LIKE %del% OR
`revistas_articulo__autores`.`apellido` LIKE %del% OR
`revistas_articulo__revista`.`nombre` LIKE %del%) AND
`revistas_articulo`.`pais` = [u'Bolivia', u'Chile', u'Colombia',
u'Costa Rica', u'Cuba', u'Ecuador', u'El Salvador', u'Espa\\xf1a',
u'Guatemala', u'Honduras', u'M\\xe9xico', u'Nicaragua', u'Panam\\xe1']
AND `revistas_articulo`.`revista_id` = [u'Arquitectura',
u'Arquitectura y construccion', u'ARQUITECTURA- Colegio Nacional de
Arquitectos CUBA'] AND `revistas_articulo`.`categoria` = [u'Articulo -
noticia', u'Catalogo de materiales', u'Critica', u'Nota biografica',
u'Nota necrologica', u'Noticia', u'Reportaje fotografico', u'Resena
bibliografica', u'Resena de obra'])"

and

params = [u'%del%', u'%del%', u'%del%', u'%del%', [u'Bolivia',
u'Chile', u'Colombia', u'Costa Rica', u'Cuba', u'Ecuador', u'El
Salvador', u'Espa\xf1a', u'Guatemala', u'Honduras', u'M\xe9xico',
u'Nicaragua', u'Panam\xe1'], [u'Arquitectura', u'Arquitectura y
construccion', u'ARQUITECTURA- Colegio Nacional de Arquitectos CUBA'],
[u'Articulo - noticia', u'Catalogo de materiales', u'Critica', u'Nota
biografica', u'Nota necrologica', u'Noticia', u'Reportaje
fotografico', u'Resena bibliografica', u'Resena de obra']]

The error is triggered by the second-to-last 'if results:" line in my
views.py:

from django.db.models import Q
from django.shortcuts import render_to_response
from models import Articulo, Revista, choice_categoria
from forms import ListForm

def lista(request):
    if request.method == 'POST':
        form = ListForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            query = data['query']
            ano_min = data['ano_min']
            ano_max = data['ano_max']
            pais = data['pais']
            revista = data['revista']
            categoria = data['categoria']
            orderby = data['orderby']

            results = Articulo.objects.all()
            if query:
                qset = (
                    Q(titulo__icontains=query) |
                    Q(autores__nombre__icontains=query) |
                    Q(autores__apellido__icontains=query) |
                    Q(revista__nombre__icontains=query)
                )
                results = results.filter(qset).distinct()
            if ano_min:
                results = results.filter(ano__gte=ano_min)
            if ano_max:
                results = results.filter(ano__lte=ano_max)
            if pais:
                results = results.filter(pais=pais)
            if revista:
                results = results.filter(revista=revista)
            if categoria:
                results = results.filter(categoria=categoria)
            #if orderby:
                #results = results.order_by(orderby)
            #count = results.count()
            if results:
                success=True

(the commented out lines where also generating similar errors).

Thanks,

Rodrigo
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to