1

私はiriscouch.comでCouchインスタンスをホストしており、CouchRestModelを使用して単純なSinatraアプリでいくつかのテストを行っています。

これが私が使用している単純なモデルです:

class User < CouchRest::Model::Base
  property :first_name, String
  property :last_name, String
  timestamps!

  design do
    view :by_first_name
  end
end

私は次の方法で新しいユーザーを作成しています。

User.create(:first_name => "Stonewall", :last_name => "Jackson")

結果を実行User.by_first_name.allすると、次のHTTPリクエストが発生します。

http://test_admin:pwd@testytest.iriscouch.com:80/blt/_design/User/_view/by_first_name?include_docs=true&reduce=false
"Accept"=>"application/json"
"Accept-Encoding"=>"gzip, deflate"
"Content-Type"=>"application/json"

これは、CouchRestを介してRestClientによって実行されます。そこに問題はありません。

しかし、このURLを試してみると、Couchからパラメーターcurlに関する苦情があります。include_docs

{"error":"query_parse_error","reason":"Query parameter `include_docs` is invalid for reduce views."}

ここで何が起こっているのか理解したいのですが。include_docsカールを使用する場合にのみ問題が発生するのはなぜですか?

4

1 に答える 1

1

1つの違いは、URLに疑問符が含まれていることです。シェルでURLを保護しないと、特殊文字として解釈されます。

サービスをテストするためのより簡単な方法が必要な場合は、の代わりにRESTClientcurlを使用できます。

于 2012-11-03T18:54:46.567 に答える