我是RoR3的新手,正在学习RoR3 Michael Hartl教程。出于兴趣,我想将注册html表单移动到主页,而不是在注册页面上。表单的代码:
<%= form_for(@user) do |f| %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
*** more fields ***
<div class="actions">
<%= f.submit "Sign up" %>
</div>
<% end %>不能简单地移动到主页--代码不会正确地引用用户模型来创建新用户,因此页面不会加载。如何实现将此表单移至网站主页的目标?
更多信息:站点的结构遵循标准的rails设置(用户模型在app/models/user.rb中名为user.rb,控制器在app/ users _CONTROLER.rb中,视图位于app/views中,其中有页面、布局和用户文件夹。当前表单在app/views/users/new.html.erb中)。
发布于 2011-05-19 09:13:02
例如,如果主页使用PagesController和home操作,并且路由是root :to => "pages#home"或类似的内容,则需要在home操作中实例化@user变量:
class PagesController < ApplicationController
def home
@user = User.new
end
.
.
.
end当表单呈现在主页上时,它将可以访问@user变量。
https://stackoverflow.com/questions/6052602
复制相似问题