*Ben Duncan*
DBA / Chief Software Architect
Mississippi State Supreme Court
Electronic Filing Division
Argg ... spoke to soon :

Errors :

web2py™ Version 2.17.2-stable+timestamp.2018.10.06.18.54.02
Python Python 2.7.13: /usr/bin/python (prefix: /opt/rh/python27/root/usr)
Traceback

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.

Traceback (most recent call last):
  File "/data/web2py/web2py/gluon/restricted.py", line 219, in restricted
    exec(ccode, environment)
  File "/data/web2py/web2py/applications/Mec/controllers/default.py"
<https://10.13.70.47/admin/default/edit/Mec/controllers/default.py>,
line 205, in <module>
  File "/data/web2py/web2py/gluon/globals.py", line 421, in <lambda>
    self._caller = lambda f: f()
  File "/data/web2py/web2py/applications/Mec/controllers/default.py"
<https://10.13.70.47/admin/default/edit/Mec/controllers/default.py>,
line 25, in user_bare
    user = auth.login_bare(username, cryptpassword)
  File "/data/web2py/web2py/gluon/tools.py", line 2283, in login_bare
    self.login_user(user)
  File "/data/web2py/web2py/gluon/authapi.py", line 739, in login_user
    self.update_groups()
  File "/data/web2py/web2py/gluon/authapi.py", line 503, in update_groups
    table_membership.user_id == self.user.id).select()
  File 
"/opt/rh/python27/root/usr/lib/python2.7/site-packages/pyDAL-17.11-py2.7.egg/pydal/objects.py",
line 109, in __getattr__
    raise AttributeError
AttributeError

Error snapshot [image: help]
<https://10.13.70.47/admin/default/ticket/Mec/10.13.69.144.2018-12-13.15-04-19.fd6eaf1e-d535-4d77-a405-c1054cbd0199#>

<type 'exceptions.AttributeError'>()

inspect attributes
Frames

   -

   *File /data/web2py/web2py/gluon/restricted.py in restricted at line 219*
   code arguments variables
   -

   *File /data/web2py/web2py/applications/Mec/controllers/default.py in
   <module> at line 205* code arguments variables
   -

   *File /data/web2py/web2py/gluon/globals.py in <lambda> at line 421* code
   arguments variables
   -

   *File /data/web2py/web2py/applications/Mec/controllers/default.py in
   user_bare at line 25* code arguments variables
   -

   *File /data/web2py/web2py/gluon/tools.py in login_bare at line 2283* code
   arguments variables
   -

   *File /data/web2py/web2py/gluon/authapi.py in login_user at line 739*
   code arguments variables
   -

   *File /data/web2py/web2py/gluon/authapi.py in update_groups at line 503*
   code arguments variables
   -

   *File
   
/opt/rh/python27/root/usr/lib/python2.7/site-packages/pyDAL-17.11-py2.7.egg/pydal/objects.py
   in __getattr__ at line 109* code arguments variables
   Function argument list

   (self=<Row {'ap_allowed': False, 'iv_allowed': False, ...ress_2': None,
   'address_3': None, 'notes': None}>, k='id')
   Code listing

   104.
   105.
   106.
   107.
   108.
   109.
   110.
   111.
   112.
   113.


       def __getattr__(self, k):
           try:
               return self.__getitem__(k)
           except KeyError:
               raise AttributeError

       def __copy__(self):
           return Row(self)

   Variables
   builtinAttributeError <type 'exceptions.AttributeError'>

Context

locals request session response
In file: /data/web2py/web2py/applications/Mec/controllers/default.py

1.

<code object <module> at 0x7f1259ef06b0, file
"/data/web2py/web2py/applications/Mec/controllers/default.py", line
11>


On Thu, Dec 13, 2018 at 3:02 PM Ben Duncan <linux...@gmail.com> wrote:

> Ok, I seem to have it working now:
>
> My Code Snippets if anyone is interested:
>
> controllers/default.py
> def user_bare():
>     alg = 'pbkdf2(1000,20,sha512)'
>     custom_auth_table.password.requires = None
>     username, password = request.post_vars['username'],
> request.post_vars['password']
>     session.is_logged_in = "NO"
>     cryptpassword =
> str(CRYPT(digest_alg=alg,salt='Mars_Salt_4u')(password)[0])
>
>     user = auth.login_bare(username, cryptpassword)
>
>     #if auth.is_logged_in() :
>     if user :
>        session.is_logged_in = "YES"
>        if auth.user['company_number'] == 0:
>          redirect(URL('company_choose'))
>        else:
>          redirect(URL('index'))
>
>     return dict()
>
>
> view/default/user_bar.html
>
> {{extend 'layout.html'}}
>
> <INPUT type="button" value="HOME"
> onclick="location.href='{{=URL('index')}}'"/>
>
> <form enctype="multipart/form-data"
>   action="{{=URL()}}" method="post"> <!--{{#or use =form.custom.begin}}-->
>      <div class="form-group">
>           <input type="text" class="form-control" name="username">
>      </div>
>      <div class="form-group">
>           <input type="password" class="form-control" name="password">
>      </div>
>      <button type="submit">
>            Submit
>      </button>
> </form> <!--{{#or use =form.custom.end}}-->
>
>
>
> *Ben Duncan*
> DBA / Chief Software Architect
> Mississippi State Supreme Court
> Electronic Filing Division
>
>
> On Thu, Dec 13, 2018 at 2:57 PM Ben Duncan <linux...@gmail.com> wrote:
>
>> Ok, thanks, will revisit it. I was getting insert errors from it before.
>> Maybe my ignorance ...
>>
>>
>> *Ben Duncan*
>> DBA / Chief Software Architect
>> Mississippi State Supreme Court
>> Electronic Filing Division
>>
>>
>> On Thu, Dec 13, 2018 at 2:14 PM Anthony <abasta...@gmail.com> wrote:
>>
>>> Got it, but I don't see login_bare/login_user/update_groups getting in
>>> the way of any of that. The update_groups method simply adds a dictionary
>>> of the user's current group ids/roles to the session, which can be used
>>> instead of doing a database lookup on each request. You are free to ignore
>>> it.
>>>
>>> Anthony
>>>
>>> On Thursday, December 13, 2018 at 11:34:05 AM UTC-5, Ben Duncan wrote:
>>>>
>>>> Thanks Anthony.
>>>>
>>>> I'm trying to maintain some reference to the auth mechanism , but our
>>>> needs get a little more convoluted.
>>>>
>>>> Some Background Info:
>>>> This is a accounting system (AR/AP/GL/IV/OE/PR/BI/BR/RMA/ ..etc) based
>>>> upon about 30 years of collected source
>>>> I have for Chancery / Circuit Clerks for Fees, Fines and restitution
>>>> and land records et.all.
>>>>
>>>> I'm trying to keep it generic as possible for the Supreme Court.
>>>>
>>>> From the Clerks view, the are elected officials for a particular
>>>> County/Jurisdiction. However, in some instances the may cover several
>>>> counties / courts (if those are small).
>>>>
>>>> Courts are grouped in "districts" and we are going to using "company
>>>> id" numbers to signify those courts within the districts and all courts
>>>> under one
>>>> umbrella for the database.
>>>>
>>>> Now the CLERKS have deputy clerks, who may OR may not be assigned to
>>>> multiple county/courts and may be limited to WHAT or what they cannot
>>>> do, but are designated by the "company" code to which court they will
>>>> have access to.
>>>> Add to that, the wants of our Office of the State Auditors our very own
>>>> AOC (Administrator of Courts and their auditors) it gets pretty
>>>> convulsed in a hurry.
>>>>
>>>> Now looking at the ACCESS CONTROL stuff, we are really a flipped
>>>> version of that - GROUP and MEMBERSHIP before and controlling the
>>>> auth_user.as well as company id in the group and membership/permission
>>>> file.signifying what court the have jurisdiction to use. (Phew).
>>>>
>>>> I hope I haven't totally confused you.
>>>>
>>>> Thanks again ...
>>>> *Ben Duncan*
>>>> DBA / Chief Software Architect
>>>> Mississippi State Supreme Court
>>>> Electronic Filing Division
>>>>
>>>>
>>>> On Thu, Dec 13, 2018 at 10:03 AM Anthony wrote:
>>>>
>>>>> On Wednesday, December 12, 2018 at 6:57:07 PM UTC-5, Ben Duncan wrote:
>>>>>>
>>>>>> Yes, I wanted to just use the auth_table.
>>>>>> Everything else is controlled outside of the normal mechs ..
>>>>>>
>>>>>
>>>>> If you don't want to use the Auth login mechanism, then I suppose you
>>>>> can write your own logic. Keep in mind you will then be responsible for
>>>>> updating the session with the appropriate auth data so Auth knows the user
>>>>> is logged in on each subsequent request. But really, I don't see why you
>>>>> would do that just to avoid having the list of group memberships
>>>>> automatically updated upon login -- what problem is that creating for you?
>>>>>
>>>>> 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 web2py+unsubscr...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> --
>>> 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.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>

-- 
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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to