Mar*_*ace 10 ruby ruby-on-rails
我是ruby的新手 - 尝试使用rails并且我已经试图做一个简单的注册表单了:
<%= form_for :user, url: user_path do |f| %>
<p>
<%= f.label :email %><br>
<%= f.text_field :email %>
</p>
<p>
<%= f.label :password %><br>
<%= f.password_field :password %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
Run Code Online (Sandbox Code Playgroud)
这是一个错误:
No route matches {:action=>"show", :controller=>"user"} missing required keys: [:id]
Run Code Online (Sandbox Code Playgroud)
任何人都能解释这实际意味着什么?
编辑:
我正在关注本教程,只是将帖子更改为用户:http://guides.rubyonrails.org/getting_started.html
form_for 应该始终获取一个对象..就像来自控制器的用户一样
# controller
def new
@user = User.new
end
# form
<%= form_for @user,...
Run Code Online (Sandbox Code Playgroud)
或者您可以使用 form_tag 方法,该方法不依赖于对象。