This module provide an easy way to deal with ldap stuff in python.
Project description
afpy.ldap
This module is actively used on http://www.afpy.org to manage the french python comunity members.
Get a connection (this custom afpy connection get is configuration from a ~/.ldap.ini file):
>>> from afpy.ldap import custom as ldap >>> conn = ldap.get_conn()
Get a node via is dn:
>>> dn = 'uid=gawel,ou=members,dc=afpy,dc=org' >>> node = conn.get_node(dn) >>> node <Node at uid=gawel,ou=members,dc=afpy,dc=org> >>> print node.birthDate 19750410000000Z
You can also define your own node class with a schema:
>>> from afpy.ldap.node import Node >>> from afpy.ldap import schema >>> class User(Node): ... uid=schema.StringProperty('uid') ... birthDate = schema.DateProperty('birthDate', title='Date de naissance') >>> node = conn.get_node(dn, node_class=User) >>> node <User at uid=gawel,ou=members,dc=afpy,dc=org>
Then data is converted to a python object:
>>> node.birthDate datetime.date(1975, 4, 10)
This also allow to generate forms with FormAlchemy:
>>> from afpy.ldap import forms >>> fs = forms.FieldSet(User) >>> user = User() >>> fs.rebind(user) >>> print fs.render().strip() # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE <div> <label class="field_opt" for="User--uid">uid</label> <input id="User--uid" name="User--uid" type="text" /> </div> ... <div> <label class="field_opt" for="User--birthDate">Date de naissance</label> ...
The source code can be find on the AFPy repository
Got a bug, feature request ? Want to send beer because you love it ? Send an email at afpy-web@lists.afpy.org
News
0.5
require dataflakes.ldapconnection>=1.0b1, python-ldap>=2.3.10
0.1
initial version
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file afpy.ldap-0.5.tar.gz
.
File metadata
- Download URL: afpy.ldap-0.5.tar.gz
- Upload date:
- Size: 28.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6659b4195202ea0bf4eac195ee6b96bf8ce40e6d8b6cc8081488cd6b4afed6d8 |
|
MD5 | 62f20981bf2a15446c741da01039952d |
|
BLAKE2b-256 | 33aa580da9d520dc3d5dbc50a60ea66dec1b0501c1d02214fbe6c292e127bc62 |