0

嗨,我对 rails 和 mvc 很陌生,但是我的应用程序有用户,我希望允许某人使用引导模式从主页快速注册,并允许他们通过正常的注册页面进行注册。

在我的用户控制器中,我为模态创建了一个部分,_newUserModal.html.erb我想在我的主页控制器的索引操作中使用它。

我已经读过我应该从动作中的另一个控制器加载部分。所以我正在尝试以下

class HomeController < ApplicationController
  def index
    render 'users/newUserModal'
  end
end

这给了我错误

模板丢失

缺少带有 {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]} 的模板 users/newUserModal。在以下位置搜索:*“/home/jeff/Development/iHaul/app/views”*“/home/jeff/Development/iHaul”*“/”

我有一种感觉,我错过了一些小东西,但我无法弄清楚。

好的,通过将渲染移动到我的 home.html.erb 的底部,它允许我的代码工作。我知道这不是最佳做法,但它现在有效。如果有人能对这个问题有所了解,那将有很大帮助。

对于任何使用来自另一个控制器的部分的人,我的建议是不要给部分提供与方法相同的名称。如果你必须明确告诉渲染使用部分文件

render :partial => 'controller/action'

如果您的仔细渲染正常工作,尽管上面的内容更具可读性。

4

1 回答 1

0

好的,我剩下的问题是错误的。经过一夜的睡眠后,我意识到我没有使用 MVC 模式来实现它的设计目的。我对使用 @user = User.new 感到很珍贵。如果我只是在我的家庭控制器的索引功能中使用它,一切都会很好地工作。

于 2013-05-07T20:56:53.087 回答