1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. | Traceback (most recent call last): File "/home/mdipierro/web2py/gluon/restricted.py", line 219, in restricted exec(ccode, environment) File "/home/mdipierro/web2py/applications/demo_app3/controllers/default.py", line 78, in <module> File "/home/mdipierro/web2py/gluon/globals.py", line 421, in <lambda> self._caller = lambda f: f() File "/home/mdipierro/web2py/applications/demo_app3/controllers/default.py", line 40, in user return dict(form=auth()) File "/home/mdipierro/web2py/gluon/tools.py", line 1801, in __call__ return getattr(self, args[0])() File "/home/mdipierro/web2py/gluon/tools.py", line 2977, in register hideerror=self.settings.hideerror): File "/home/mdipierro/web2py/gluon/sqlhtml.py", line 1989, in accepts self.vars.id = self.table.insert(**fields) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/objects.py", line 762, in insert ret = self._db._adapter.insert(self, row.op_values()) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/adapters/base.py", line 480, in insert query = self._insert(table, fields) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/adapters/base.py", line 476, in _insert ','.join(self.expand(v, f.type) for f, v in fields)) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/adapters/base.py", line 476, in <genexpr> ','.join(self.expand(v, f.type) for f, v in fields)) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/adapters/base.py", line 445, in _expand rv = self.represent(expression, field_type) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/adapters/base.py", line 382, in represent return super(SQLAdapter, self).represent(obj, field_type) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/adapters/base.py", line 336, in represent return self.representer.represent(obj, field_type) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/representers/__init__.py", line 251, in represent rv = self.get_representer_for_type(field_type)(rv, field_type) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/representers/__init__.py", line 209, in _default return self.adapt(value) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/representers/__init__.py", line 227, in adapt value = str(value) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/validators.py", line 2890, in __str__ hashed = simple_hash(self.password, key, salt, digest_alg) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/validators.py", line 2813, in simple_hash int(keylen), get_digest(alg))) File "/home/mdipierro/web2py/gluon/packages/dal/pydal/validators.py", line 2796, in pbkdf2_hex hmac = hashlib.pbkdf2_hmac(hashfunc().name, to_bytes(data), AttributeError: 'module' object has no attribute 'pbkdf2_hmac'
|