基于一些javascript保存后修改rails对象

时间:2012-05-22 00:32:14

标签: javascript ruby-on-rails json controller

我想知道如何处理这个问题。 为简单起见,我可以说我通过javascript从网站提交链接到我的rails服务器。 我希望我的rails服务器根据该链接创建一个页面,并从该页面中提取徽标。现在我有代码从网页上找到一个徽标,但不知道如何将两者联系在一起。

我的控制器接受了json post请求并保存了一个页面对象但是我怎么知道要求它运行我的js并将该图像位置保存在页面对象中呢?

任何帮助都会非常感谢!

1 个答案:

答案 0 :(得分:1)

如果我理解了这个问题:您想在服务器通过链接获取徽标后添加页面吗?该页面将使用此徽标创建。 如果是这样,那么服务器本身应该使用例如mechanize来跟踪链接,并找到徽标的链接。例如:

require 'mechanize'
...
def create
  @page = Page.new(params[:page])
  link = @page.link
  agent = Mechanize.new
  page = agent.get link
  img_src = page.search("#logo").first.attributes['src']
  @page.logo = img_src
  if @page.save
  ...
end

更复杂的例子:http://caldeas.com/2010/08/01/using-mechanize-to-download-images-from-stock-exchange/

这可能不是你想要的,但它会解决你的问题。