我正在尝试在我的Rails数据库银行应用程序上添加一个新事务,但是当我点击new时,我收到此错误:
交易#new中的NoMethodError 显示第10行引发的app / views / transactions / _transaction_form.html.erb: #
的未定义方法`dateD'
第10行,即:
9: <%= f.label :dateD %><br />
10: <%= f.date_select :dateD %>
即使我删除了这个,但似乎有错误,但是有不同的错误。这是我的_transaction_form.html.erb
,我在我的编辑/新页面上使用它,编辑似乎工作正常,但是一旦我转到新的,我得到上面发布的错误。这是新代码:
<% form_for(@bank_account,@transaction) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :bank_account_id %><br />
<%= f.text_field :bank_account_id %>
</p>
<p>
<%= f.label :dateD %><br />
<%= f.date_select :dateD %>
</p>
<p>
<%= f.label :trans_type %><br />
<%= f.text_field :trans_type %>
</p>
<p>
<%= f.label :amount %><br />
<%= f.text_field :amount %>
</p>
<p>
<%= f.label :new_balance %><br />
<%= f.text_field :new_balance %>
</p>
<p>
<%= f.label :transaction_success %><br />
<%= f.check_box :transaction_success %>
</p>
<p>
<%= f.submit 'Submit' %>
</p>
<% end %>
def new
@transaction = @bank_account.transactions.build
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @transaction }
end
end
答案 0 :(得分:0)
两件事。您的form_for
应该使用<%=
而不是<%
,[]
部分应该@bank, @transaction
:
<%= form_for([@bank_account,@transaction]) do |f| %>