【发布时间】:2010-09-15 13:56:54
【问题描述】:
我只是在学习 Ruby on Rails。我读过几本书,看过很多 Railscast,看过一些例子。
但是,当我使用 Rails 处理我的第一个严肃项目时,我一直对如何正确实现一些我见过的大多数教程所缺乏的非常基本的网站功能感到困惑。
例如:导航菜单。有很多关于如何制作静态的教程,但是动态的呢?如果我想制作一个跨页面的导航栏,我该怎么做?
我认为学习此类内容的最佳方法是查看示例代码。 RoR 中有没有好的开源网站?我可以查看任何示例代码吗?
我想我的问题确实是使用 MVC 的结果。基本的想法是非常基本的,我理解这一点。但似乎大多数应用程序的每个部分都彼此完全分开......如果我想将来自两个模型的数据组合起来显示在同一页面上怎么办?以我提出的示例为例,如果我有一个 NavModel 和一个 PageModel,我的 PageController 可以访问这两个模型吗?我想我假设一个 PageController 只能访问一个 PageModel,而不能访问其他。我见过的所有例子似乎都是这样运作的……这是一个错误的假设吗?
或者我完全没有抓住重点,那是“做错了吗?”
【问题讨论】:
-
模型和控制器之间没有一对一的关系。编写一个使用来自许多不同模型的数据的控制器没有错。模型是您的数据。控制器是你的命令。视图就是您的屏幕。
标签: ruby-on-rails