Hi Anthony,
Thanks for getting back - I understood your point. I included it
in one of my functions and called it where it worked. for example I called
it in dashboard() function which is used to show the dashboard and is the
first landing page of my application. However now whenever I want to
navigate to some other page it gives me the following error - Basically it
is the same error I got before. It is trying to fetch value of user_right1
.
I have even defined* user_right1* as global and provided a default value
for example
global user_right1
user_right1=False
*Error*:
127.0.0.1.2018-06-06.15-16-08.ba03dfb3-628e-42bf-9b34-fe8a6d34c5ec
*<type 'exceptions.NameError'> name 'user_right1' is not defined*
Version
web2py™
Version 2.15.3-stable+timestamp.2017.08.07.12.51.45
Python
Python 2.7.13: C:\Python27\python.exe (prefix: C:\Python27)
Traceback
1.
2.
3.
4.
5.
6.
Code in my controller is pretty simple it retrieves the value stored in the
database and checks whether it is *True *or *False *and based on the value
it provides module access to the users
*default.py *
global user_right1
user_right1 = False
def dashboard():
##Code to retrieve the value
user_right1=True
return dict(user_right1=user_right1)
in my *layout *page - *sbadmin2_layout.html - Remember this is the layout
page *
{{if patchmanRight==True:}}
<li>.....
--
-- Show few modules else not
</li>
{{pass}}
What could be done to fix this issue as it will keep on giving me this
error for every other navigation in the application unless it is
dashboard.html ?
Thanks!
Rahul D.
On Tuesday, June 5, 2018 at 7:21:41 PM UTC+5:30, Anthony wrote:
On Tuesday, June 5, 2018 at 7:34:38 AM UTC-4, Rahul wrote:
Hi A
>
>> ll,
>> I am visiting this group after a long time. I have a question
>> perhaps a simple one - I want to check for user rights for my application
>> and I want to code it in plugin layout (any_layout_installed.html ) file.
>> I am trying to verify parameters passed to this file. I can pass session
>> variables and check for the rights however one drawback is that if I change
>> the value from say True to False, it does not refresh this for the session
>> variable. I must restart the browser to get rid of this previously
>> initialized session variable. So I want to know if there is away to do this
>> with some local variables (pass local variables) and if these could be
>> called in the view (*plugin_layouts\layouts\<any_plugin_layout.html>*)
>>
>> for example in layout view -
>> {{if user_right1==True:}}
>>
>> <HTML CODE TO SHOW THE SECTION ELSE NOT >
>> {{pass}}
>>
>>
>>
>> The question is where (in which function in the controller ) do I specify
>> this value *user_right1* to use it in
>> *plugin_layouts\layouts\<any_plugin_layout.html>* ?? I hope I am clear
>> with my question.
>>
>
> The variable user_right1 must either be defined in a model file or
> returned in the dictionary by the controller:
>
> def myfunction():
> ...
> return dict(user_right1=True, ...)
>
> Anthony
>
--
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.