This is old code - it worked without a problem before.  I suspect recent 
upgrades broke it.

I have a SQLDFORM.grid using the following links:

links = [lambda row: A(B(T('View')), _target = "_blank",
                           _href = URL(r = request, c = 'articles',
                                       f = 'show_akb_article',
                                       args = 
str(row[db.akb_articles.id])))]

    if auth.has_membership(role = 'kb_ed'):
        links.append(lambda row: A(B(T('Edit')), _target = "_blank",
                                   _href = URL(r = request, c = 'articles',
                                               f = 'edit_akb_article',
                                               args = 
str(row[db.akb_articles.id]))))

        links.append(lambda row: A(B(T('Link to Institute')), _target = 
"_blank",
                                   _href = URL(r = request, c = 'articles',
                                               f = 'art_research',
                                               args = 
str(row[db.akb_articles.id]))))


I use any of those links in the grid even if I am logged in as a member of 
the 'kb_ed' group.  I get the error:  "not authorized" even when I try to 
use 'view'.

I have experimented by removing the following decorator 

@auth.requires(lambda:auth.has_membership('kb_ed'))
def edit_akb_article():

but even without the decorator I cannot edit the article.

What is causing this?

Regards
Johann


BTW the syntax highlighting is not working for me today in the web 
interface to the group.

-- 



Reply via email to