# File lib/couchrest/database.rb, line 249 def view(name, params = {}, payload = {}, &block) params = params.dup payload['keys'] = params.delete(:keys) if params[:keys] # Try recognising the name, otherwise assume already prepared view_path = name_to_view_path(name) url = CouchRest.paramify_url "#{@root}/#{view_path}", params if block_given? if !payload.empty? @streamer.post url, payload, &block else @streamer.get url, &block end else if !payload.empty? CouchRest.post url, payload else CouchRest.get url end end end