CARVIEW |
defunkt / ambitious_activeldap forked from automatthew/ambitious_activeldap
- Source
- Commits
- Network (1)
- Issues (0)
- Downloads (0)
- Wiki (1)
- Graphs
-
Branch:
master
click here to add a description
click here to add a homepage
-
Branches (1)
- master ✓
- Tags (0)
Pledgie Donations
Once activated, we'll place the following badge in your repository's detail box:
Ambition adapter for ActiveLdap — Read more
name | age | message | |
---|---|---|---|
![]() |
LICENSE | Wed Jan 30 17:42:57 -0800 2008 | updated license and Rakefile author info; chang... [Matthew King] |
![]() |
Manifest | Wed Jan 30 17:44:51 -0800 2008 | updated manifest [Matthew King] |
![]() |
README.textile | Sun Mar 09 11:31:09 -0700 2008 | gotta add the file in question, yep [defunkt] |
![]() |
Rakefile | Thu Jan 31 12:22:53 -0800 2008 | version fix [Matthew King] |
![]() |
lib/ | Thu Jan 31 12:00:11 -0800 2008 | adjusted query kick to actually match spec, hey! [Matthew King] |
![]() |
test/ | Wed Jan 30 12:06:34 -0800 2008 | copied from ambition [Matthew King] |
An Ambitious ActiveLdap Adapter
Write LDAP search filters in Ruby. Awesomeness courtesy of Chris Wanstrath’s Ambition library.
You must be using ActiveLdap 0.9 or greater.
Get It
$ sudo gem install ambitious-activeldap
require 'rubygems' require 'ambition/adapters/active_ldap'
Examples
Let User
be a subclass of ActiveLdap::Base
User.select { |u| u.givenName == ‘Severian’ }.each do |user|
puts user.name
end
Queries don’t run until you kick them. This adapter supports only the basic kicker methods: each
, each_with_index
, map
, entries
, to_a
.
This adapter also doesn’t support the methods that require sorting, slicing, or counting, because OpenLDAP effectively doesn’t support such things. ActiveLdap lets you request sorted and sliced result sets, but it does the work in Ruby, so you might as well do it yourself.
You can call to_s
, but not to_hash
on a query. to_s
returns the LDAP search filter as a string.
>> User.select { |m| m.givenName == ‘Jonas’ }.to_s
=> “(givenName=Jonas)”
Issues.find(:all, :filter => “(type=bug)”)
Found a bug? Sweet. Add it at the Lighthouse.
More information on Ambition: