缺少渲染用户/新模板

时间:2013-03-04 18:05:14

标签: ruby-on-rails devise ruby-on-rails-3.2 actionview

尝试渲染控制器操作时遇到问题。按照文档我应该可以使用:

render 'user/new' or
render template: 'user/new' or
render :action => "new", :controller => "users"

虽然我得到了一个模板缺少异常,但我不是,所以为什么。使用表单进行工作,但复制完全相同的表单是愚蠢的。

我很乱,所以我很遗憾地错过了一些东西,但我不明白。 任何提示?

编辑:我正在从GroupsController调用我要渲染新用户表单的地方。仅使用脚手架模型进行测试,我得到了相同的错误。

ActionView::Template::Error (
Missing partial users/new with {:locale=>[:de], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}. Searched in:
* "/Users/rob/Development/projects/test/app/views"
* "/Users/rob/.rvm/gems/ruby-1.9.3-p362/gems/oembed_provider_engine-0.2.0/app/views"
* "/Users/rob/.rvm/gems/ruby-1.9.3-p362/gems/devise-2.2.3/app/views"
):

1 个答案:

答案 0 :(得分:0)

部分模板的文件名始终以下划线开头。因此,您需要在“用户”视图中使用“_new.html.erb”文件进行渲染。

如果我没有弄错的话,默认的脚手架会为每个模型创建一个“_form.html.erb”,以便在新模式中进行渲染并编辑动作。你可以只渲染它而不是整个“新”视图。