我现在在轨道上已经有一段时间了,这就是我一直在遇到的问题:
当我通过以下方式创建控制器时:
“rails生成控制器ControllerName ViewName”
我可以按照自己的意愿工作,但如果由于某种原因我通过以下方式创建控制器:
“rails生成控制器ControllerName”
然后只需将ViewName.html.erb添加到与我的控制器名称相同的视图中的文件夹中,就会出错。 所以具体案例是我写的:
rails生成控制器主题列表显示。
这为我创造了:
1.controllers>subjects_controller.rb
2.views>subjects>list.html.erb
3.views>subjects>show.html.erb
所以这一切都很好。但正如我已经说过的,如果我需要另一种观点;让我们说“新”我只是在其他* .html.erb文件旁边添加“new.html.erb”和一个动作:
def new
端
到我的 subjects_controller.rb 然后它将无法正常工作。 之前的两个视图将继续工作,但在命令行之外创建的任何其他“* html.erb”都不会。
是否有其他地方存储有关视图的信息?
我是Windows 7用户(32位).Rails版本= 3.0.3。 Web服务器=的WEBrick。 文本编辑器= E-TextEditor
答案 0 :(得分:0)
这很可能是由于您的路线配置不正确造成的。因此,查看routes.rb
的内容会很有帮助在您的情况下,我认为配置路由的最佳方法是使用资源映射:
resources :subjects
默认情况下,这将为标准RESTful操作创建路由:index,:show,:edit,:update,:new,:create和:destroy。
有关路由的更多详细信息,我建议Rails Routing from the Outside In