我是ruby / rails语言的初学者,我只是通过创建我感兴趣的东西来学习,所以我打算创建一个简单的银行系统。
我没有走得太远,因为我收到以下错误:
ndefined method `text_field' for nil:NilClass
此代码的第7行:
<%= form_tag('/deposit') do |f| %>
<div class="field">
<%= f.text_field :dval %>
</div>
<div class="actions">
<%= f.submit %>
这是我的银行班级
class BankController < ApplicationController
def initialize
@balance ||= 0
end
def deposit
@dval ||= 0
@balance = @balance + @dval
end
def withdraw
end
end
我希望dval是用户想要存入的数字,所以如果他们输入10并提交表格,它会将dval(10)添加到余额变量上。
非常感谢任何关于如何做到这一点的指示。
答案 0 :(得分:2)
你的表格应该是
<%= form_tag('/deposit') do%>
<div class="field">
<%= text_field_tag 'dval' %>
</div>
<div class="actions">
<%= submit_tag "Submit"%>
<%end%>
你的控制器应该是
class BankController < ApplicationController
def deposit
@dval = params[:dval].to_i
@balance = @balance + @dval
end
end
的文档
的文档