2

プロジェクトで高層 API を動作させようとしています。総初心者。

アカウントがあり、API キーがあり、コントローラーで Rails プロジェクトに追加されています。

require 'highrise' Highrise::Base.site = ' http://MYACCOUNT.highrisehq.com ' Highrise::Base.user = 'MYAPI KEY' @person
= Highrise::Person.find(:all)

私の見解では、連絡先リストにあるすべての人を取得できますが、そのリストを絞り込む方法がわかりません。

@person = Highrise::Person.find(:all) がそれらすべてをフェッチする場合、たとえば「ラリー」という名前のあなただけをフェッチするものは何ですか?

私は試してみましたが、これに頭を包むことはできません。

4

2 に答える 2

4

だから私は
私のコントローラーで私の答えを得ました

@tag = params[:tag]
@person = Highrise::Person.find(:all, :from => "/people/search.xml?term=#{@tag}")  


THanks Andy for your help .   set me on the right path
于 2010-08-24T21:25:47.943 に答える
3

@peopleあなたのクエリは複数のレコードを返すので、あなたが持っているもののインスタンス変数に使用します。これらのレコードをループして、次のように人のフィールドを印刷できます。

<% @people.each do |person| %>
  <%= "Got a person: #{person.inspect}" %>
<% end %>

一人一人を印刷する代わりに、気になる値をチェックすることもできますが、puts person if person.name == "larry"前もって「larry」が必要であることがわかっている場合は、Highrise に 1 つのレコードだけをクエリする必要があります。Highrise API ドキュメントの検索条件によるリストを確認してください。私はそれを使用していませんが/people/search.xml?criteria[email]=larry@company.com、結果のコレクションを返す必要がある条件で検索してみます。必要な特定のラリーが見つかった場合は、ユーザー ID があり、「表示」アクションを使用できますAPI、たとえば/people/#{id}.xml(ここでラリーの ID を渡します)、単一のレコードをクエリします。

于 2010-08-24T04:57:23.973 に答える