Hi,
First post here, so thanks in advance for any help provided.
I have a sub-routine in my main function of a a controller that looks like
this :
if form.vars.npc:
pass
else:
form.vars.npc = 0
onrp_row = db(
(db.npa.npa==form.vars.npa) &
(db.npa.loc_name_short==form.vars.lns) &
(db.npa.npa_complement==form.vars.npc)
).select(db.npa.id)
onrp_id=onrp_row[0].id
Essentially, I use this to update a record I just inserted in the db with a
foreign primary key from an external data source. I need to keep this
reference for data consistency purposes in case the external source is
modified.
This sub-routine behaves as expected.
My problem is that I am trying to make a helper function out of this
sub-routine. I have extracted it from the index() function and my
controller now looks like this :
def get_onrp(npa, lns, npc=0):
id=db((db.npa.npa==npa)&(db.npa.loc_name_short==lns)&(db.npa.npa_complement==npc)).select(db.npa.id)
if id:
return id[0].id
else:
return 0
def index():
# SQLFORM.factory here
onrp_id = get_onrp(form.vars.npa, form.vars.lns, form.vars.npc)
# rest of controller logic here
Now, the get_onrp function systematically returns 0, i.e. the db query
returns no rows.
I have played around in the web2py interactive shell and defining the
function works as expected as well.
Any suggestions ?
--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.