Class: Cushion::Design
Instance Attribute Summary
Attributes inherited from Document
Instance Method Summary collapse
- #language ⇒ Object
-
#language=(lang) ⇒ Object
Sets this design document’s language.
- #name ⇒ Object
- #name=(newname) ⇒ Object
- #save ⇒ Object
-
#view(view_name, options = {}) ⇒ Object
Queries a view rooted at this document.
Methods inherited from Document
#[], #[]=, #attach, #attachments, #copy_to, database, #delete, #destroy, #detach, #fetch, #id, #id?, #initialize, #key?, #merge!, #move_to, #new_document?, #reload, #rename, #rev, #rev?, set_database, #to_json
Constructor Details
This class inherits a constructor from Cushion::Document
Instance Method Details
#language ⇒ Object
17 18 19 |
# File 'lib/cushion/design.rb', line 17 def language self['language'] end |
#language=(lang) ⇒ Object
Sets this design document’s language.
22 23 24 |
# File 'lib/cushion/design.rb', line 22 def language=(lang) self['language'] = lang end |
#name ⇒ Object
9 10 11 |
# File 'lib/cushion/design.rb', line 9 def name id.sub('_design/','') if id end |
#name=(newname) ⇒ Object
13 14 15 |
# File 'lib/cushion/design.rb', line 13 def name=(newname) self['_id'] = "_design/#{newname}" end |
#save ⇒ Object
26 27 28 29 30 |
# File 'lib/cushion/design.rb', line 26 def save raise ArgumentError, "_design docs require a name" unless name && name.length > 0 self.language = "javascript" unless language super end |
#view(view_name, options = {}) ⇒ Object
Queries a view rooted at this document. See Database#view.
4 5 6 7 |
# File 'lib/cushion/design.rb', line 4 def view(view_name, = {}) slug = "#{name}/#{view_name}" database.view(slug, ) end |