提交表单,不保存到数据库,并显示在页面 - Rails

时间:2013-06-13 09:24:20

标签: ruby-on-rails ruby-on-rails-3.2

我在索引页面上有一个表单,当提交到某个页面时(例如:localhost:3000/:domainame), 我希望它不保存到数据库中并显示一些数据。

def index
end

def who
  w = Whois::Client.new(:timeout => 20)
  @domainlook = w.lookup(params[:domainname])
end

我该怎么做?

1 个答案:

答案 0 :(得分:3)

利用示例代码的一个非常简单的示例实现:

创建POST匹配路线:

# config/routes.rb
match 'who' => 'home#who', :via => :post

为路线设置控制器操作:

# app/controllers/home_controller.rb
def index
end

def who
    w = Whois::Client.new(:timeout => 20)
    @domainlook = w.lookup(params[:domainname])
end

index.html.erb视图应包含使用form_tag帮助程序的表单:

# app/views/home/index.html.erb
<%= form_tag who_path do %>

    <%= label_tag :domainname %>
    <%= text_field_tag :domainname %>

<% end %>

最后,who.html.erb视图将呈现您的非模型实例变量:

# app/views/who.html.erb
<%= @domainlook %>