Method: Gitgo::Rest#create
- Defined in:
- lib/gitgo/rest.rb
#create(sha = nil) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/gitgo/rest.rb', line 21 def create(sha=nil) return(sha.nil? ? preview : show(sha)) if preview? doc = model.save(attrs) parents = request['parents'] if parents.nil? || parents.empty? doc.create else parents = [parents] unless parents.kind_of?(Array) parents.collect! do |parent| model[parent] or raise "invalid parent: #{parent.inspect}" end doc.link_to(*parents) end doc.commit! redirect_to_doc(doc) end |