(dp1 S'output' p2 S" 'Query' object has no attribute 'type'" p3 sS'layer' p4 S'/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py' p5 sS'code' p6 S' at 0x7f5ecb79f4b0, file "/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py", line 1>' p7 sS'snapshot' p8 (dp9 S'exception' p10 (dp11 S'__getslice__' p12 S"" p13 sS'__str__' p14 S"" p15 sS'__reduce__' p16 S'' p17 sS'__dict__' p18 S'{}' p19 sS'message' p20 S'"\'Query\' object has no attribute \'type\'"' p21 sS'__sizeof__' p22 S'' p23 sS'__init__' p24 S"" p25 sS'__setattr__' p26 S"" p27 sS'__reduce_ex__' p28 S'' p29 sS'__new__' p30 S'' p31 sS'__format__' p32 S'' p33 sS'__class__' p34 S"" p35 sS'__doc__' p36 S"'Attribute not found.'" p37 sS'__getitem__' p38 S"" p39 sS'__setstate__' p40 S'' p41 sS'__getattribute__' p42 S"" p43 sS'args' p44 S'("\'Query\' object has no attribute \'type\'",)' p45 sS'__subclasshook__' p46 S'' p47 sS'__unicode__' p48 S'' p49 sS'__delattr__' p50 S"" p51 sS'__repr__' p52 S"" p53 sS'__hash__' p54 S"" p55 ssS'evalue' p56 S"'Query' object has no attribute 'type'" p57 sS'request' p58 cgluon.html XML_unpickle p59 (S's\x7f_\x00\x00
ajax:
False
application:
Highways
args:
cid:
None
client:
127.0.0.1
controller:
default
cookies:
session_id_admin:
127.0.0.1-f1be4dca-bcf9-4878-95b1-414bde0f9a8e
comment:
domain:
expires:
httponly:
max-age:
path:
samesite:
secure:
version:
session_id_highways:
127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07
comment:
domain:
expires:
httponly:
max-age:
path:
samesite:
secure:
version:
session_id_welcome:
127.0.0.1-20f9a98f-1b81-4646-9abb-adb9a7218ef1
comment:
domain:
expires:
httponly:
max-age:
path:
samesite:
secure:
version:
env:
HTTP_ACCEPT:
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_ACCEPT_ENCODING:
gzip, deflate
HTTP_ACCEPT_LANGUAGE:
en-US,en;q=0.5
HTTP_CONNECTION:
keep-alive
HTTP_COOKIE:
session_id_welcome=127.0.0.1-20f9a98f-1b81-4646-9abb-adb9a7218ef1; session_id_admin=127.0.0.1-f1be4dca-bcf9-4878-95b1-414bde0f9a8e; session_id_highways=127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07
HTTP_DNT:
1
HTTP_HOST:
127.0.0.1:8000
HTTP_REFERER:
http://127.0.0.1:8000/Highways/default/search
HTTP_UPGRADE_INSECURE_REQUESTS:
1
HTTP_USER_AGENT:
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0
PATH_INFO:
/Highways/default/results
QUERY_STRING:
REMOTE_ADDR:
127.0.0.1
REMOTE_PORT:
59402
REQUEST_METHOD:
GET
SCRIPT_NAME:
SERVER_NAME:
Laptop-asus-X510UNR
SERVER_PORT:
8000
SERVER_PROTOCOL:
HTTP/1.1
SERVER_SOFTWARE:
Rocket 1.2.6
app_folders:
set(['/home/jdalbey/Downloads/web2py/applications/admin', '/home/jdalbey/Downloads/web2py/applications/welcome', '/home/jdalbey/Downloads/web2py/applications/Highways'])
applications_parent:
/home/jdalbey/Downloads/web2py
cmd_args:
cmd_options:
<Values at 0x7f5f0d43a4b0: {'verbose': False, 'ip': '127.0.0.1', 'debuglevel': 30, 'with_scheduler': False, 'shutdown_timeout': 5, 'taskbar': False, 'with_coverage': False, 'pid_filename': 'httpserver.pid', 'maxthreads': None, 'softcron': False, 'server_name': 'Laptop-asus-X510UNR', 'bpython': False, 'nogui': False, 'port': 8000, 'print_errors': False, 'extcron': False, 'runcron': False, 'run_system_tests': False, 'test': None, 'folder': '/home/jdalbey/Downloads/web2py', 'config': '', 'minthreads': None, 'shell': None, 'run': '', 'log_filename': 'httpserver.log', 'profiler_dir': None, 'args': [], 'socket_timeout': 5, 'ssl_ca_certificate': None, 'scheduler': None, 'interfaces': None, 'ssl_private_key': '', 'gae': None, 'password': '******', 'request_queue_size': 5, 'ssl_certificate': '', 'cronjob': False, 'numthreads': None, 'quiet': False, 'import_models': False, 'timeout': 10, 'plain': False, 'nobanner': False}>
db_sessions:
set([])
debugging:
True
gluon_parent:
/home/jdalbey/Downloads/web2py
http_accept:
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
http_accept_encoding:
gzip, deflate
http_accept_language:
en-US,en;q=0.5
http_connection:
keep-alive
http_cookie:
session_id_welcome=127.0.0.1-20f9a98f-1b81-4646-9abb-adb9a7218ef1; session_id_admin=127.0.0.1-f1be4dca-bcf9-4878-95b1-414bde0f9a8e; session_id_highways=127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07
http_dnt:
1
http_host:
127.0.0.1:8000
http_referer:
http://127.0.0.1:8000/Highways/default/search
http_upgrade_insecure_requests:
1
http_user_agent:
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0
is_jython:
False
is_py2:
True
is_pypy:
False
is_source:
True
local_hosts:
::1
127.0.1.1
::ffff:127.0.0.1
127.0.0.1
Laptop-asus-X510UNR
path_info:
/Highways/default/results
query_string:
remote_addr:
127.0.0.1
remote_port:
59402
request_method:
GET
request_uri:
/Highways/default/results
script_name:
server_name:
Laptop-asus-X510UNR
server_port:
8000
server_protocol:
HTTP/1.1
server_software:
Rocket 1.2.6
web2py_path:
/home/jdalbey/Downloads/web2py
web2py_version:
2.18.5-stable+timestamp.2019.04.08.04.22.03
wsgi.errors:
<open file '<stderr>', mode 'w' at 0x7f5f144f6270>
wsgi.file_wrapper:
<class wsgiref.util.FileWrapper at 0x7f5f0d463c90>
wsgi.input:
<socket._fileobject object at 0x7f5ecb922650>
wsgi.multiprocess:
False
wsgi.multithread:
True
wsgi.run_once:
False
wsgi.url_scheme:
http
wsgi.version:
1
0
wsgi_errors:
<open file '<stderr>', mode 'w' at 0x7f5f144f6270>
wsgi_file_wrapper:
<class wsgiref.util.FileWrapper at 0x7f5f0d463c90>
wsgi_input:
<socket._fileobject object at 0x7f5ecb922650>
wsgi_multiprocess:
False
wsgi_multithread:
True
wsgi_run_once:
False
wsgi_url_scheme:
http
wsgi_version:
1
0
extension:
html
folder:
/home/jdalbey/Downloads/web2py/applications/Highways
function:
results
global_settings:
app_folders:
set(['/home/jdalbey/Downloads/web2py/applications/admin', '/home/jdalbey/Downloads/web2py/applications/welcome', '/home/jdalbey/Downloads/web2py/applications/Highways'])
applications_parent:
/home/jdalbey/Downloads/web2py
cmd_args:
cmd_options:
<Values at 0x7f5f0d43a4b0: {'verbose': False, 'ip': '127.0.0.1', 'debuglevel': 30, 'with_scheduler': False, 'shutdown_timeout': 5, 'taskbar': False, 'with_coverage': False, 'pid_filename': 'httpserver.pid', 'maxthreads': None, 'softcron': False, 'server_name': 'Laptop-asus-X510UNR', 'bpython': False, 'nogui': False, 'port': 8000, 'print_errors': False, 'extcron': False, 'runcron': False, 'run_system_tests': False, 'test': None, 'folder': '/home/jdalbey/Downloads/web2py', 'config': '', 'minthreads': None, 'shell': None, 'run': '', 'log_filename': 'httpserver.log', 'profiler_dir': None, 'args': [], 'socket_timeout': 5, 'ssl_ca_certificate': None, 'scheduler': None, 'interfaces': None, 'ssl_private_key': '', 'gae': None, 'password': '******', 'request_queue_size': 5, 'ssl_certificate': '', 'cronjob': False, 'numthreads': None, 'quiet': False, 'import_models': False, 'timeout': 10, 'plain': False, 'nobanner': False}>
db_sessions:
set([])
debugging:
True
gluon_parent:
/home/jdalbey/Downloads/web2py
is_jython:
False
is_py2:
True
is_pypy:
False
is_source:
True
local_hosts:
::1
127.0.1.1
::ffff:127.0.0.1
127.0.0.1
Laptop-asus-X510UNR
web2py_version:
2.18.5-stable+timestamp.2019.04.08.04.22.03
is_https:
False
is_local:
True
is_restful:
False
is_scheduler:
False
is_shell:
False
method:
GET
now:
datetime.datetime(2019, 12, 21, 8, 16, 56, 468806)
raw_args:
raw_extension:
None
url:
/Highways/default/results
utcnow:
datetime.datetime(2019, 12, 21, 16, 16, 56, 468820)
wsgi:
<gluon.main.LazyWSGI object at 0x7f5ecb947590>
' tRp60 sS'frames' p61 (lp62 (dp63 S'file' p64 S'/home/jdalbey/Downloads/web2py/gluon/restricted.py' p65 sS'dump' p66 (dp67 S'environment' p68 S"{'A': , 'ANY_OF': , 'ASSIGNJS': , 'B': , 'BEAUTIFY': , 'BODY': , 'BR': , 'BUTTON': , 'CAT': , 'CENTER': , ...}" p69 sS'ccode' p70 S' at 0x7f5ecb79f4b0, file "/...cations/Highways/controllers/default.py", line 1>' p71 ssS'lnum' p72 I219 sS'lines' p73 (dp74 I214 S' if environment is None:' p75 sI215 S' environment = {}' p76 sI216 S" environment['__file__'] = layer" p77 sI217 S" environment['__name__'] = '__restricted__'" p78 sI218 S' try:' p79 sI219 S' exec(ccode, environment)' p80 sI220 S' except HTTP:' p81 sI221 S' raise' p82 sI222 S' except RestrictedError:' p83 sI223 S' # do not encapsulate (obfuscate) the original RestrictedError' p84 ssS'call' p85 S'(ccode= at 0x7f5ecb79f4b0, file "/...cations/Highways/controllers/default.py", line 1>, environment={\'A\': , \'ANY_OF\': , \'ASSIGNJS\': , \'B\': , \'BEAUTIFY\': , \'BODY\': , \'BR\': , \'BUTTON\': , \'CAT\': , \'CENTER\': , ...}, layer=\'/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py\', scode= at 0x7f5ecb79f4b0, file "/...cations/Highways/controllers/default.py", line 1>)' p86 sS'func' p87 S'restricted' p88 sa(dp89 g64 S'/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py' p90 sg66 (dp91 sg72 I36 sg73 (dp92 I32 S" response.flash = 'your submission is accepted'" p93 sI33 S" redirect(URL('list'))" p94 sI34 S' return dict(form=form)' p95 sI25 S' return dict(hwy=hwy)' p96 sI26 S'' sI27 S'# Create a new record' p97 sI28 S'def submit():' p98 sI29 S" # Don't name this function 'request' because it creates a name conflict with http.request" p99 sI30 S' form = SQLFORM(db.highways)' p100 sI31 S' if form.process().accepted:' p101 ssg85 S'()' p102 sg87 S'' p103 sa(dp104 g64 S'/home/jdalbey/Downloads/web2py/gluon/globals.py' p105 sg66 (dp106 S'self' p107 S'undefined' p108 sS'f' S'' p109 ssg72 I421 sg73 (dp110 I416 S" self.flash = '' # used by the default view layout" p111 sI417 S' self.meta = Storage() # used by web2py_ajax.html' p112 sI418 S' self.menu = [] # used by the default view layout' p113 sI419 S' self.files = [] # used by web2py_ajax.html' p114 sI420 S' self._vars = None' p115 sI421 S' self._caller = lambda f: f()' p116 sI422 S' self._view_environment = None' p117 sI423 S' self._custom_commit = None' p118 sI424 S' self._custom_rollback = None' p119 sI425 S" self.generic_patterns = ['*']" p120 ssg85 S'(f=)' p121 sg87 S'' p122 sa(dp123 g64 S'/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py' p124 sg66 (dp125 S'global session' p126 S"" p127 sS'hwy' p128 g108 sS').select' p129 g108 sS'db.highways.lognum' p130 S'' p131 sS'session.log_number' p132 S"'101'" p133 sS'db.highways' p134 S'' p135 sS'global db' p136 S'' p137 ssg72 I24 sg73 (dp138 I19 S" redirect(URL('results'))" p139 sI20 S' return dict(form=form)' p140 sI21 S'# Show the item that was found in the search' p141 sI22 S'def results():' p142 sI23 S' #hwy = db(db.highways.lognum > session.log_number).select()' p143 sI24 S' hwy = db().select(db.highways.lognum > session.log_number)' p144 sI25 S' return dict(hwy=hwy)' p145 sI26 S'' sI27 S'# Create a new record' p146 sI28 S'def submit():' p147 ssg85 S'()' p148 sg87 S'results' p149 sa(dp150 g64 S'/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/objects.py' p151 sg66 (dp152 S'self.query' p153 S'None' p154 sS'adapter.select' p155 S'>' p156 sS'fields' p157 S'[ \'101\')>]' p158 sS'adapter' p159 S'' p160 sS'attributes' p161 g19 sS'self' p162 S'' p163 ssg72 I2395 sg73 (dp164 I2390 S" attributes.get('join', None)," p165 sI2391 S" attributes.get('left', None)," p166 sI2392 S" attributes.get('orderby', None)," p167 sI2393 S" attributes.get('groupby', None))" p168 sI2394 S' fields = adapter.expand_all(fields, tablenames)' p169 sI2395 S' return adapter.select(self.query, fields, attributes)' p170 sI2396 S'' sI2397 S' def iterselect(self, *fields, **attributes):' p171 sI2398 S' adapter = self.db._adapter' p172 sI2399 S' tablenames = adapter.tables(self.query,' p173 ssg85 S'(self=, *fields=[ \'101\')>], **attributes={})' p174 sg87 S'select' p175 sa(dp176 g64 S'/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/sqlite.py' p177 sg66 (dp178 S'fields' p179 S'[ \'101\')>]' p180 sS'self' p181 S'' p182 sS').select' p183 S'>' p184 sS'attributes' p185 g19 sS'query' p186 S'None' p187 sS'builtinsuper' p188 S"" p189 sS'global SQLite' p190 S"" p191 ssg72 I82 sg73 (dp192 I77 S" self.execute('PRAGMA foreign_keys=ON;')" p193 sI78 S'' sI79 S' def select(self, query, fields, attributes):' p194 sI80 S" if attributes.get('for_update', False) and 'cache' not in attributes:" p195 sI81 S" self.execute('BEGIN IMMEDIATE TRANSACTION;')" p196 sI82 S' return super(SQLite, self).select(query, fields, attributes)' p197 sI83 S'' sI84 S' def delete(self, table, query):' p198 sI85 S' db = self.db' p199 sI86 S' deleted = [x[table._id.name] for x in db(query).select(table._id)]' p200 ssg85 S'(self=, query=None, fields=[ \'101\')>], attributes={})' p201 sg87 g175 sa(dp202 g64 S'/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py' p203 sg66 (dp204 S'fields' p205 S'[ \'101\')>]' p206 sS'self' p207 S'' p208 sS'self._select_wcols' p209 S'>' p210 sS'sql' p211 g108 sS'query' p212 S'None' p213 sS'colnames' p214 g108 sS'attributes' p215 g19 ssg72 I758 sg73 (dp216 I753 S' time_expire)' p217 sI754 S' ret._restore_fields(fields)' p218 sI755 S' return ret' p219 sI756 S'' sI757 S' def select(self, query, fields, attributes):' p220 sI758 S' colnames, sql = self._select_wcols(query, fields, **attributes)' p221 sI759 S" cache = attributes.get('cache', None)" p222 sI760 S" if cache and attributes.get('cacheable', False):" p223 sI761 S' return self._cached_select(' p224 sI762 S' cache, sql, fields, attributes, colnames)' p225 ssg85 S'(self=, query=None, fields=[ \'101\')>], attributes={})' p226 sg87 g175 sa(dp227 g64 S'/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py' p228 sg66 (dp229 S'x' S' \'101\')>' p230 sS'fields' p231 S'[ \'101\')>]' p232 sS'self' p233 S'' p234 sS'query_env' p235 S"{'current_scope': ['highways'], 'parent_scope': []}" p236 sS'self._geoexpand' p237 S'>' p238 sS'sql_fields' p239 g108 ssg72 I633 sg73 (dp240 I628 S' current_scope = outer_scoped + list(tablemap)' p241 sI629 S' query_env = dict(current_scope=current_scope,' p242 sI630 S' parent_scope=outer_scoped)' p243 sI631 S' #: prepare columns and expand fields' p244 sI632 S' colnames = [self._colexpand(x, query_env) for x in fields]' p245 sI633 S" sql_fields = ', '.join(self._geoexpand(x, query_env) for x in fields)" p246 sI634 S' table_alias = lambda name: tablemap[name].query_name(outer_scoped)[0]' p247 sI635 S' if join and not left:' p248 sI636 S' cross_joins = iexcluded + list(itables_to_merge)' p249 sI637 S' tokens = [table_alias(cross_joins[0])]' p250 ssg85 S'(self=, query=None, fields=[ \'101\')>], left=False, join=False, distinct=False, orderby=False, groupby=False, having=False, limitby=False, orderby_on_limitby=True, for_update=False, outer_scoped=[], required=None, cache=None, cacheable=None, processor=None)' p251 sg87 S'_select_wcols' p252 sa(dp253 g64 S'/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py' p254 sg66 (dp255 S'x' S' \'101\')>' p256 sS'fields' p257 g108 sS'self' p258 S'' p259 sS'query_env' p260 S"{'current_scope': ['highways'], 'parent_scope': []}" p261 sS'self._geoexpand' p262 S'>' p263 sS'sql_fields' p264 g108 ssg72 I633 sg73 (dp265 I628 S' current_scope = outer_scoped + list(tablemap)' p266 sI629 S' query_env = dict(current_scope=current_scope,' p267 sI630 S' parent_scope=outer_scoped)' p268 sI631 S' #: prepare columns and expand fields' p269 sI632 S' colnames = [self._colexpand(x, query_env) for x in fields]' p270 sI633 S" sql_fields = ', '.join(self._geoexpand(x, query_env) for x in fields)" p271 sI634 S' table_alias = lambda name: tablemap[name].query_name(outer_scoped)[0]' p272 sI635 S' if join and not left:' p273 sI636 S' cross_joins = iexcluded + list(itables_to_merge)' p274 sI637 S' tokens = [table_alias(cross_joins[0])]' p275 ssg85 S'((x= \'101\')>,))' p276 sg87 S'' p277 sa(dp278 g64 S'/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py' p279 sg66 (dp280 S'field.type' p281 g108 sS'builtinisinstance' p282 S'' p283 sS'builtinstr' p284 S"" p285 sS'global Field' p286 S"" p287 sS'field' p288 S' \'101\')>' p289 ssg72 I551 sg73 (dp290 I546 S'' sI547 S' def _colexpand(self, field, query_env):' p291 sI548 S' return self.expand(field, colnames=True, query_env=query_env)' p292 sI549 S'' sI550 S' def _geoexpand(self, field, query_env):' p293 sI551 S" if isinstance(field.type, str) and field.type.startswith('geo') and \\" p294 sI552 S' isinstance(field, Field):' p295 sI553 S' field = field.st_astext()' p296 sI554 S' return self.expand(field, query_env=query_env)' p297 sI555 S'' ssg85 S'(self=, field= \'101\')>, query_env={\'current_scope\': [\'highways\'], \'parent_scope\': []})' p298 sg87 S'_geoexpand' p299 sasS'pyver' p300 S'Python 2.7.17: /usr/bin/python (prefix: /usr)' p301 sS'session' p302 g59 (S's\xa0\x00\x00\x00
log_number:
101
' tRp303 sS'etype' p304 S"" p305 sS'date' p306 S'Sat Dec 21 08:16:56 2019' p307 sS'response' p308 g59 (S'sQ\x1d\x00\x00
body:
<cStringIO.StringO object at 0x7f5ecb947170>
cookies:
session_id_highways:
127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07
comment:
domain:
expires:
httponly:
max-age:
path:
/
samesite:
secure:
version:
delimiters:
{{
}}
files:
flash:
form_label_separator:
:
formstyle:
table3cols
generic_patterns:
*
headers:
X-Powered-By:
web2py
menu:
Home
False
/Highways/default/index
List
False
/Highways/default/list
Search
False
/Highways/default/search
Request
False
/Highways/default/submit
meta:
author:
Author
description:
describe your app
keywords:
keyword
models_to_run:
^\\w+\\.py$
^default/\\w+\\.py$
^default/results/\\w+\\.py$
postprocessing:
session_client:
127.0.0.1
session_cookie_compression_level:
None
session_cookie_expires:
None
session_data_name:
session_data_highways
session_file:
<open file '/home/jdalbey/Downloads/web2py/applications/Highways/sessions/091/188/127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07', mode 'rb+' at 0x7f5ecb94fa50>
session_filename:
/home/jdalbey/Downloads/web2py/applications/Highways/sessions/127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07
session_hash:
5c7050ac29ef6c3df228b8b14b08433a
session_id:
127.0.0.1-740fb65f-f71a-48dc-b87b-de7b5b07ce07
session_id_name:
session_id_highways
session_locked:
True
session_masterapp:
Highways
session_new:
False
session_storage_type:
file
status:
200
subtitle:
subtitle customize me!
title:
Highways
view:
default/results.html
' tRp309 sS'locals' p310 (dp311 S'query_env' p312 S"{'current_scope': ['highways'], 'parent_scope': []}" p313 sS'self' p314 S'' p315 sS'field' p316 S' \'101\')>' p317 sssS'traceback' p318 S'Traceback (most recent call last):\n File "/home/jdalbey/Downloads/web2py/gluon/restricted.py", line 219, in restricted\n exec(ccode, environment)\n File "/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py", line 36, in \n File "/home/jdalbey/Downloads/web2py/gluon/globals.py", line 421, in \n self._caller = lambda f: f()\n File "/home/jdalbey/Downloads/web2py/applications/Highways/controllers/default.py", line 24, in results\n hwy = db().select(db.highways.lognum > session.log_number)\n File "/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/objects.py", line 2395, in select\n return adapter.select(self.query, fields, attributes)\n File "/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/sqlite.py", line 82, in select\n return super(SQLite, self).select(query, fields, attributes)\n File "/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py", line 758, in select\n colnames, sql = self._select_wcols(query, fields, **attributes)\n File "/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py", line 633, in _select_wcols\n sql_fields = \', \'.join(self._geoexpand(x, query_env) for x in fields)\n File "/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py", line 633, in \n sql_fields = \', \'.join(self._geoexpand(x, query_env) for x in fields)\n File "/home/jdalbey/Downloads/web2py/gluon/packages/dal/pydal/adapters/base.py", line 551, in _geoexpand\n if isinstance(field.type, str) and field.type.startswith(\'geo\') and \\\nAttributeError: \'Query\' object has no attribute \'type\'\n' p319 s.