﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
15959	.values()/.values_list() fails on EmptyQuerySet	Davide Rizzo <mail@…>	nobody	"Calling .values() or .values_list() on an EmptyQuerySet raises an exception.
{{{
>>> EmptyQuerySet().values('id')
Traceback (most recent call last):
  File ""<console>"", line 1, in <module>
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 515, in values
    return self._clone(klass=ValuesQuerySet, setup=True, _fields=fields)
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 1049, in _clone
    c = super(EmptyQuerySet, self)._clone(klass, setup=setup, **kwargs)
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 772, in _clone
    c._setup_query()
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 895, in _setup_query
    self.query.add_fields(self.field_names, False)
  File ""C:\Python27\lib\site-packages\django\db\models\sql\query.py"", line 1549, in add_fields
    alias = self.get_initial_alias()
  File ""C:\Python27\lib\site-packages\django\db\models\sql\query.py"", line 798, in get_initial_alias
    alias = self.join((None, self.model._meta.db_table, None, None))
AttributeError: 'NoneType' object has no attribute '_meta'
}}}
{{{
>>> EmptyQuerySet().values_list('id')
Traceback (most recent call last):
  File ""<console>"", line 1, in <module>
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 525, in values_list
    _fields=fields)
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 1049, in _clone
    c = super(EmptyQuerySet, self)._clone(klass, setup=setup, **kwargs)
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 772, in _clone
    c._setup_query()
  File ""C:\Python27\lib\site-packages\django\db\models\query.py"", line 895, in _setup_query
    self.query.add_fields(self.field_names, False)
  File ""C:\Python27\lib\site-packages\django\db\models\sql\query.py"", line 1549, in add_fields
    alias = self.get_initial_alias()
  File ""C:\Python27\lib\site-packages\django\db\models\sql\query.py"", line 798, in get_initial_alias
    alias = self.join((None, self.model._meta.db_table, None, None))
AttributeError: 'NoneType' object has no attribute '_meta'
}}}

This seems related to #7235. I can reproduce the bug on 1.2.4 and 1.2.5 but not on 1.2.3.
{{{
### Django 1.2.3
>>> q = EmptyQuerySet()
>>> q.values_list('id')
[]
}}}
"	Bug	closed	Database layer (models, ORM)	1.2	Normal	fixed	dceu2011		Accepted	1	0	0	1	0	0
