Ruby On Rails:从表单访问变量,而不将其保存到数据库

时间:2010-06-27 18:37:23

标签: ruby-on-rails ruby

我有3页:

[第1页]索引

[Page 2]用户在表单中输入值。

[第3页]对输入的值进行计算并将其输出到此页面上。

我想知道我该怎么做?我不想将数据保存在任何数据库中。

谢谢=)

*根据反馈添加了信息20100628。谢谢! *

对于PHP,我可以使用$ _GET和%_POST函数。我不知道如何在ROR上做到这一点。 [第1页:index.html]

银行金额: 利率 (%):

[第2页:interest_cal.php] 在10年内,您银行的总金额将为_______

6 个答案:

答案 0 :(得分:2)

欢迎来到stackoverflow。这是一个编程QA网站,所以很高兴看到一些代码,以更清楚地看到你想要的。但我认为你想要的是一个无表格模型。 railscasts有两个很好的截屏视频:

  1. Tableless Model(Rails 2)
  2. Active Model(Rails 3)

答案 1 :(得分:0)

只需在模型中声明属性并使用它。

attr_accessor :value

答案 2 :(得分:0)

如果你在Rails中使用params[:field_name],这类似于PHP中的$_REQUEST['field_name'](除了Rails中的params不包含cookie,因为$ _REQUEST会这样做)

答案 3 :(得分:0)

  

我不想保存任何数据   数据库中。

它很简单 不要创建任何模型。 或者如果你必须创建模型。从ActiveRecord :: Base

创建没有继承的模型
class UserModel 

但不是

class UserModel <  ActiveRecord::Base
  

对于PHP,我可以使用$ _GET和%_POST   功能

在控制器中使用 params 变量

答案 4 :(得分:0)

尝试这样的事情

Page1 - &gt;索引

Page2 - &gt;

假设你有一个名为user的模型,它不是从ActiveRecord继承的,所以它看起来像这样

class User
  attr_accessor :my_value   
end

你会得到一个这样的表格

<% form_for(@user) do |f| %>
  <p>
    <%= f.text_field :my_value %>
  </p>
  <p>
    <%= f.submit 'send value' %>
  </p>
<% end %>

**抱歉我不得不删除一些标签

并在您的表单发布操作(在控制器中),您可以获取值

params[:user][:my_value]

希望这会有所帮助

欢呼声

sameera

答案 5 :(得分:0)

如果你没有模型,只是一个变量,我宁愿使用form_tag而不是form_for

<%= form_tag :action => "your_page_3_action" $>
    <%= text_field_tag :some_var %>

这样的事情。然后你可以回到:some_var通过:

def your_page_3_action
  params[:some_var] # that's your input valut