如何将信息从控制器方法发送到 HTML 页面



我正在开发一个Rails应用程序,并希望将我已经从XML文件中读取的一些信息放在新页面中。

在我看来,我有:

<%= link_to 'Hoteles', :method => :hotels  %>

控制器方法是:

def hotels
  url = "http://api.hotelsbase.org/search.php?longitude="+@city_visit.longitude+"&latitude="+@city_visit.latitude
  data = Nokogiri::HTML(open(url))
  $name = data.xpath("//name")
  $fulladdress = data.xpath("//fulladdress")
  $phone = data.xpath("//phone")
  $city = data.xpath("//city")
  $description = data.xpath("//description")
  $featured = data.xpath("//featured")
  $stars = data.xpath("//stars")
  $rating = data.xpath("//rating")
  $long = data.xpath("//long")
  $lat = data.xpath("//lat")
  $dist = data.xpath("//dist")
  $price = data.xpath("//price")
  $tripadvisorurl = data.xpath("//tripadvisorurl")
  $url = data.xpath("//url")
  $hotelsbaseUrl = data.xpath("//hotelsbaseUrl") 
end

现在我想在 HTML 页面中显示该信息。

定义的所有全局变量(以$开头)都应该是实例变量(以@开头)

@name = data.xpath("//name")
@fulladdress = data.xpath("//fulladdress")

然后你可以在hotels.html.erb视图中使用它们,就像这样

<%= @name %>
你应该看看Rails指南

,找到更多关于Rails的信息和良好实践;这个叫做"Layouts and Renders in Rails"的指南会对你解决这个问题有所帮助。

相关内容

  • 没有找到相关文章

最新更新