2011-07-26 11 views
0
  • "Notes"というモデルがあります。
  • 属性は "id"、 "url"、 "content"です。
  • 私のnotes_controllerでは、 "url"が自分のクエリURLと一致する特定のノートの "id"を取得します。非に基づいてレコードを検索する方法をURL

    Rails 3はキー以外の属性に基づいてレコードを検索します

    がされています。しかし

    @noteid = Note.find(:url => "blah").id 
    

    が、これはエラーを返します: 不明の鍵(複数可)

私は、次を使用しています主要な属性?

+2

@meagarをお試しください:どうやら、少数の人々がこの質問への答えの恩恵を受けました。私は確かにした。コメントありがとう。 – rgoraya

答えて

7

@noteid = Note.where(:url => "blah").select('id').id

+0

すばやく返信いただきありがとうございます。これはレコードをフェッチしているようですが、ここでの問題は「StringをFixnumに強制することはできません」ということです。私はそれを解決するためにto_sを使ってみましたが、それはid属性だけでなくObjectを表す8桁の数字を引きます。私はRailsには新しく、Googleでこれを見てみました。私はこのことについてあなたの助けに感謝します。 – rgoraya

+1

@rgoraya:私はあなたの質問にこの答えを受け入れ、 "StringはFixnumに強制できません"という問題について別の質問をします。 –

+0

@ryan:ありがとう!あなたのコメントは、スタックオーバーフローのやり取りをよりよく理解するのに役立ちます。 – rgoraya

関連する問題