Hello,

I'm a newbie on python language so I'm struggling to do some queries.
I have a table Student which I use to fill a table on view, above that 
table, I have a search box, where I would like to provide the option to 
search in multiple columns (phone, last name, first name, or nationality).
I don't know how exactly do a dynamic query in this case because I have 
some fields which are references from other tables.

This is my Db
db.define_table('Nationality',
                Field('descripcion', 'string'),
               )

db.define_table('Grade',
                Field('level', 'string'),
               )

db.define_table('Student',
                Field('lastname', 'string'),
                Field('firstname', 'string'),
                Field('nationality','reference Nationality'),
                Field('phone', 'integer'),
                Field('email', 'string'),
                Field('gradelevel','reference Grade'),
               )

and this is my try so far
queries = [(db.Student.id > 0)]
    if search_value and search_value != '' and search_value != 0:
        queries.append(db.Student(search_value))  
        query = reduce(lambda a,b:(a&b),queries) 

        query.select()



I found a generic way to do it but still don't know how to deal with 
references.
Any suggestion/idea would be very appreciated :)

queries=[]if arg1 == "xyz": queries.append(db.abc.id > 0)if arg2 == "xyz": 
queries.append(db.def.id > 0)query = reduce(lambda 
a,b:(a&b),queries)query.select()




-- 
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 web2py+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/web2py/54dc8ca8-bebe-4604-8e4e-a89c254ed944%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to