我正在学习RoR,两个不同的源以不同的方式描述View与浏览器的关系。一个来源将Controller描述为在与View交互之后向浏览器返回请求。另一个来源描述了View从Controller收到指令后直接返回给浏览器的请求。所以我应该理解Controller在浏览器和View之间,还是View在Controller和浏览器之间?Ruby on Rails MVC说明
1
A
回答
3
我认为这两种解释都是部分正确和部分错误,因为它们都是粗略的简化。
当请求传递给控制器时,它执行与请求的动作相对应的方法。该方法完成的其中一件事就是渲染视图 - 这就是render
的功能。如果你没有明确地调用渲染,它会被默认的参数调用。两者之间没有真正的“介于”另一个和浏览器之间,但控制器能够自行响应请求,而视图不是。
1
控制器使用视图返回请求。可以在没有视图的情况下响应一个请求(通过重定向,不渲染任何东西,静态字符串,JSON或XML--虽然你可能会认为后面三个是控制器内部的视图逻辑),但不响应请求没有控制器。
1
我不是RoR专家。但从技术和架构的角度来看,我们应该将所有标准MVC框架中的视图都视为passive。这意味着它从不“做”任何事情 - 视图就像某种UI模板一样工作,描述屏幕(或页面)应该如何呈现。
因此,最终控制器将根据视图定义呈现基于的HTML页面,并将其提供给最终用户。
相关问题
- 1. ASP MVC vs Ruby on Rails
- 2. Ruby on Rails MVC问题
- 3. 未使用@ photo.valid时的回退说明?在Ruby on Rails上
- 4. 说明on Rails的协会 - 轨道4
- 5. Ruby与Ruby On Rails
- 6. Ruby on Rails - Sqlite3
- 7. ActiveRecordNotFound Ruby On Rails
- 8. Ruby on Rails + EventMachine?
- 9. Ruby on Rails - Facebook
- 10. CMS on Ruby on Rails
- 11. 关于Rails中Ruby语法的说明
- 12. Ruby on rails hosting
- 13. MongoDb Ruby on Rails
- 14. 在Ruby on Rails中声明关联
- 15. Ruby on Rails与chargify
- 16. Ruby on Rails中的MVC是什么?
- 17. ASP.NET MVC在Ruby on Rails,CakePHP,et。人?
- 18. Ruby on Rails的ASP.NET MVC版本“link_to_unless_current”
- 19. mvc体系结构ruby on rails
- 20. Ruby on Rails - not grokking
- 21. ruby on rails form_for
- 22. Ruby on Rails - send_file
- 23. LocalJumpError(Ruby on Rails)
- 24. Mootools + Ruby on Rails ==?
- 25. Ruby on Rails + Devise
- 26. Ruby on Rails XML
- 27. OCIError(ruby on rails)
- 28. Docsplit Ruby on Rails
- 29. Ruby on Rails Time.now
- 30. Ruby on rails console
为什么不能都是对的? – ghoppe
它们被描述的方式都是有意义的,并且似乎是兼容的。但是,我想要明确理解前进的方向。 –