1

アドレスを含む変数を返すデータベース クエリがあります。

@terminal_address = Terminal.find(:all, :select => :full_address ,:conditions => ["id = ?" , params[:id]])

@terminal_addressをジオコーディング コードに渡すと、データの受け渡し方法が原因でエラーが発生します。変数を引用符で囲んだアドレスに置き換えると、正常に機能します。変数から文字列を抽出するにはどうすればよいですか?

これは非常にイライラします!

4

3 に答える 3

4
@terminal_address = Terminal.find(:first, :conditions => ["id = ?" , params[:id]]).full_address

これはうまくいくはずです。

あなたが間違っていたこと:

  • :first of Terminals だけでなく :all を要求すると、配列が与えられました
  • 配列内の各エントリは、1 つの属性のみが選択された端末インスタンス (full_address) でした。
于 2009-09-02T14:06:15.910 に答える
-1

はクラス@terminal_addressのインスタンスです。Terminalしたがって、アドレス情報を含むそのクラスの属性を取得する必要があります。この場合、フィールドは「full_address」という名前になっているように見えます。

Terminal.find(:first, :conditions => ["id = ?" , params[:id]]).full_address

完全なアドレス文字列を返す必要があります

于 2009-09-02T14:08:44.130 に答える