Ruby on rails Rails帮助新手

Ruby on rails Rails帮助新手,ruby-on-rails,geocoding,Ruby On Rails,Geocoding,我有一个数据库查询,它返回到一个包含地址的变量 @terminal_address = Terminal.find(:all, :select => :full_address ,:conditions => ["id = ?" , params[:id]]) 当我将@terminal\u address传递给我的地理编码代码时,由于数据的传递方式,它会出错。如果我用引号中的地址替换变量,它就可以正常工作。如何从变量中提取字符串 这太令人沮丧了 @terminal_address

我有一个数据库查询,它返回到一个包含地址的变量

@terminal_address = Terminal.find(:all, :select => :full_address ,:conditions => ["id = ?" , params[:id]])
当我将
@terminal\u address
传递给我的地理编码代码时,由于数据的传递方式,它会出错。如果我用引号中的地址替换变量,它就可以正常工作。如何从变量中提取字符串

这太令人沮丧了

@terminal_address = Terminal.find(:first, :conditions => ["id = ?" , params[:id]]).full_address
这应该行得通

你做错了什么:

  • 您要求的是:all而不是only:first of Terminals,您得到了一个数组
  • 数组中的每个条目都是一个终端实例,只选择了一个属性(完整地址)
这应该行得通

你做错了什么:

  • 您要求的是:all而不是only:first of Terminals,您得到了一个数组
  • 数组中的每个条目都是一个终端实例,只选择了一个属性(完整地址)

终端地址是
终端类的一个实例。因此,您需要获取包含地址信息的类的属性。在本例中,该字段似乎命名为“full_address”,类似于:

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

应返回完整的地址字符串,
@terminal\u address
terminal
类的一个实例。因此,您需要获取包含地址信息的类的属性。在本例中,该字段似乎命名为“full_address”,类似于:

Terminal.find(:first, :conditions => ["id = ?" , params[:id]]).full_address
应该返回完整的地址字符串,为什么不:

Terminal.find_by_id!(params[:id], :select => :full_address).full_address
这将在找不到id时引发错误。

嗯,为什么不:

Terminal.find_by_id!(params[:id], :select => :full_address).full_address

当找不到id时,这将引发错误。

请发布地理编码代码好吗?你的其他代码也会很好:)你能发布地理编码代码吗?您的其他代码也会很好:)是的,带有“id=?”的条件不是rails的方式,带有“id=?”的条件不是rails的方式