我是 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 %>
这是一个错误:
No route matches {:action=>"show", :controller=>"user"} missing required keys: [:id]
谁能解释一下这到底是什么意思?
编辑:
我正在学习本教程,仅将帖子更改为用户:http://guides.rubyonrails.org/getting_started.html
最佳答案
form_for 应该总是得到一个对象..就像来自 Controller 的用户
# controller
def new
@user = User.new
end
# form
<%= form_for @user,...
或者你可以使用不依赖于对象的 form_tag 方法..
关于ruby-on-rails - ActionController::UrlGenerationError 缺少必需的键:[:id],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17687763/