Ruby on rails教程:用户创建视图在哪里创建?

时间:2011-07-29 17:37:54

标签: ruby-on-rails-3

尝试按照rails 3上的红宝石教程,我已经完成了注册过程(通过第8章)但是没有用户视图:create.html.erb已经创建。由于'create'是用户控制器中的一个部分,因此视图/用户中需要有相应的'create.html.erb'文件,因此当我尝试使用教程表单创建一个时,我得到一个'缺少模板'错误新用户。

教程在哪里创建create.html.erb文件?我已经浏览了几次教程并且找不到任何痕迹。

提前感谢您的帮助。 --Fred


我正在编辑这个问题,因为出于某种原因,该网站不允许我在我的问题的回复下面添加评论。

在UsersController中......我直接从tutotrial中复制了以下代码:

def create
  @user = User.new(params[:user])
  if @user.save
    #do something here
  else
    @title = "Sign up"
    render = 'new'
  end
end

我得到:缺少模板用户/创建{:locale => [:en,:en] .....

因此,如果它不是一个缺少的模板问题,它是什么?

2 个答案:

答案 0 :(得分:1)

create是一个中间动作,它不需要视图。在您的创建函数中,确保您对某些内容执行redirect_to或渲染视图。在这里,您还可以使用与功能成功相对应的消息填充闪存(验证错误,保存成功等)

答案 1 :(得分:0)

创建新记录时,实际上会调用 new 方法,该方法具有名为 new.html.erb 的关联视图。当您点击 new.html.erb 视图中的“提交”按钮时,系统会调用创建方法,并且没有创建的视图 - 它只是一个没有视图的方法。

同样适用于更新方法,该方法没有自己的视图,但与编辑操作是“朋友”,其关联视图称为edit.html.erb。

删除方法不同