Skip to content

Latest commit

 

History

History
33 lines (24 loc) · 1000 Bytes

README.textile

File metadata and controls

33 lines (24 loc) · 1000 Bytes

ActiveFedora::Finders

A mixin to allow use of dynamic finder methods (a la Rails) with ActiveFedora. These methods operate against the FCRepo Object Search.
Allowed fields are the 15 DCES metadata fields, and the FCRepo object properties, ie:

SINGLE_VALUE_FIELDS = [:pid, :cDate, :mDate, :label]
SYSTEM_FIELDS = SINGLE_VALUE_FIELDS.concat [:ownerId]
DC_FIELDS = [:contributor, :coverage, :creator, :date, :description, :format,
:identifier, :language, :publisher, :relation, :rights, :source,
:subject, :title, :type ]
SUPPORTED_ALTS = [:cdate, :create_date, :mdate, :modified_date, :owner_id]

Example:

class MyModel < ActiveFedora::Base
include ActiveFedora::RepositoryQuerying
end

obj = MyModel.search_repo(pid: “fedora-system:ContentModel-3.0”).first!

**

Roadmap:

0.1: dynamic finders, bang support
0.2 rubydora 1.x
0.3: Rubydora 1.0…2.0
0.4: AF 6.7+
0.5: Rails 4 and Hydra 7
0.6: support or_create|initialize
0.7: support _all and _last
0.8: support scopes