我一直在关注允许我创建登录帐户的教程。我很确定我已经遵循了所有步骤,但是不会显示创建新帐户的表单。
new.html.erb:
<% form_for @user, :url => account_path do |f| %>
<%= f.error_messages %>
<%= render :partial => 'form', :locals => { :f => f } %>
<%= f.submit "Register" %>
<% end %>
_form.html.erb:
<p><%= f.label :login %></p>
<p><%= f.text_field :login %></p>
<p><%= f.label :email %></p>
<p><%= f.text_field :email %></p>
<p><%= f.label :password, f.object.new_record? ? nil : "Change password" %></p>
<p><%= f.password_field :password %></p>
<p><%= f.label :password_confirmation %></p>
<p><%= f.password_field :password_confirmation %></p>
当我转到/users/new
时,调试器会将其吐出:
ApplicationController::current_user_session
Rendered users/_form.html.erb (3.0ms)
Rendered users/new.html.erb within layouts/application (9.8ms)
Completed 200 OK in 165ms (Views: 99.7ms | ActiveRecord: 0.0ms)
Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at 2012-08-12 09:06:44 -0500
所以,它告诉我它已成功渲染,但是当我访问该链接时,没有任何显示。有谁知道为什么?
答案 0 :(得分:12)
您需要将<%=
erb标记与任何生成输出的帮助方法一起使用。这包括form_for和输入标签。
<%= form_for ... %>
<% end %>