Hi,
I want to pass a value to a function for using it in a query
I made links with this code in the calling grid
links = [lambda row: A(T('View flexi
list'),_href=URL(show_flexlist,args=[row.id,0],user_signature=True)),lambda
row: A(T('View flexi
list'),_href=URL(show_flexlist,args=[row.id,1],user_signature=True))])
@auth.requires_login()
def index():
db.type_article.articlename.writable=False
db.articles.id.readable=db.articles.id.writable=False
db.articles.cod_ref.readable=db.articles.cod_ref.writable=False
db.articles.dossier.readable=db.articles.dossier.writable=False
db.articles.conteneur.readable=db.articles.conteneur.writable=False
db.articles.bulk_id.readable=db.articles.bulk_id.writable=False
db.articles.isintegrated.readable=db.articles.isintegrated.writable=False
db.articles.id_stk_article.readable=db.articles.id_stk_article.writable=False
db.articles.date_sortie.readable=db.articles.date_sortie.writable=False
db.articles.detruit.readable=db.articles.detruit.writable=False
db.type_article.id.readable=db.type_article.id.writable=False
db.articles.depot_id.readable=db.articles.depot_id.writable=False
db.type_article.id_narval.readable=db.type_article.id_narval.writable=False
response.flash = T("Bonjour ")+auth.user.username
request.title=T("Braid Logistics Europe")
myquery=(db.type_article.id==db.articles.condi_id)&(db.articles.depot_id==auth.user.id_depot)&(db.articles.isintegrated==False)
myfields=[db.type_article.articlename]
myheaders={'type_article.articlename':T('Type article')}
default_sort_order=[db.type_article.articlename]
hide_fields(db.articles, ['heatpad', 'wallpanel', 'forcecntnum',
'id_stk_article', 'isintegrated','cntnumok'])
type_articles=SQLFORM.grid(query=myquery
,orderby=default_sort_order
,deletable=False
,editable=False
,details=False
,maxtextlength=64
,paginate=25
,create=False
,fields=myfields
,headers=myheaders
,field_id=db.type_article.id
,groupby=db.type_article.articlename|db.type_article.id
,links = [lambda row: A(T('View flexi
list'),_href=URL(show_flexlist,args=[row.id,0],user_signature=True)),lambda
row: A(T('View flexi
list'),_href=URL(show_flexlist,args=[row.id,1],user_signature=True))])
return dict(message=T('Welcome to Web Braid
stock!'),type_articles=type_articles)
@auth.requires_signature(hash_vars=True)
def show_flexlist():
type_article = request.args(0, cast=int)
#isintegrated=False
isintegrated =request.args(1, cast=int)
#isintegrated=int(request.vars['_bintegrate'])
Results=db(db.type_article.id==type_article).select(db.type_article.articlename)
row=Results[0]
ArticleName=row['articlename']
response.flash =T('Depot:')+str(auth.user.id_depot)
request.title=T("Braid Logistics Europe")
if isintegrated==1 :
bintegrated=True
else:
bintegrated=False
myquery=((db.articles.condi_id==type_article)&(db.articles.depot_id==auth.user.id_depot)&(db.articles.isintegrated==bintegrated))
#myfields={db.articles.cod_ref,db.articles.conteneur,db.articles.dossier,db.articles.id}
#myheaders={'articles.cod_ref':T('Flexi
Number'),'articles.conteneur':T('Conteneur Number'),'articles.dossier':T('Braid
reference'),'articles.id':'ID'}
myfields=[db.articles.cod_ref,db.articles.conteneur,db.articles.dossier,db.articles.date_sortie,db.articles.detruit,db.articles.bulk_id,db.articles.cntnumok]
myheaders={'articles.detruit':T('Destroyed'),'articles.bulk_id':T('Bulkhead'),'articles.dossier':T('Braid
reference'),'articles.date_sortie':T('Fitting
Date'),'articles.conteneur':T('Conteneur Number'),'articles.cod_ref':T('Flexi
Number')}
default_sort_order=[db.articles.cod_ref]
db.articles.cod_ref.writable=False
db.articles.id.readable=False
db.articles.cntnumok.readable=db.articles.cntnumok.writable=False
hide_fields(db.articles,['heatpad','wallpanel','forcecntnum','id_stk_article','isintegrated'])
links = [lambda row: A(T('View
Flexi'),_href=URL(show_flexi,args=[row.id,type_article],user_signature=True))]
flexlist=SQLFORM.grid(query=myquery
,orderby=default_sort_order
,deletable=False
,editable=False
,details=False
,maxtextlength=64
,paginate=25
,create=False
,fields=myfields
,headers=myheaders
,user_signature=True
,searchable=True]
,args= [type_article,isintegrated]
,links=links)
return dict(message=ArticleName,flexlist=flexlist)
All work fine except when i use the search widget in the response grid, it go
back on not autorized page.
I guess in this case the signature is not sent
--
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/d/optout.