1

我对 Ruby on Rails 还很陌生,我遇到了一个看似简单的问题,但我似乎无法弄清楚我做错了什么。我的主页有一个按钮,当您单击该按钮时,它应该创建一个包含数据库信息的 xml 文件。

按钮代码:

<%= button_to "Create Google File", :action => :create_google_file %>

控制器代码:

class ProductsController < ApplicationController
  def new
  end

  def create_google_file    
      @products = Product.find(:all)
      file = File.new('dir.xml','w')
      doc = @products.to_xml

      file.puts doc
      file.close
  end
end

我得到的错误是

No route matches {:action=>"create_google_file", :controller=>"products"}
4

1 回答 1

1

将此添加到您的 config/routes.rb 文件中

match "/create_google_file" => "products#create_google_file", :as => :create_google_file

并将按钮更改为此

<%= button_to "Create Google File", create_google_file_path %>
于 2012-12-20T14:17:33.500 回答