第三天 Routes 与 MVC

呈前一天的问题!昨日的答案是因为我们有在 yml 档设定 production 的环境要使用 pgsql, 部署至 heruku 上也会帮我装一个 pgsql!这其中的奥妙,可能我周日部属时还会来写一篇!

今天先不讲一下 rails 起步走的接下去!临时的想法,要介绍一下 rails 的设计架构!

当我们进入一个由 rails 所建构的网站时,大概的流程图上图!由我用一个简单的例子说明!

假如你把一个网站,当成一本书的话

routing 就等於书的目录页

controller 等於翻书的动作

model 等於书的内文,你想像一本食谱书的话就是那些食谱的步骤呀!图啊!

view 等於书的排版与美化

网页画面 等於最终我们翻到那页所看到的完整画面,而页码就等於网址

有了上面的描述,这样的话,我们就可以串成一个当你点击网页的流程!

今天你看到一本书你很喜欢
你看到一个网站

你把它打开来
你点击前往,浏览器向 Rails 请求页面

翻到目录页,看到感兴趣的章节你翻书到那页
经由 routing 拿到网址,触发 controller 跟 model 要资料并回传资料

最终看到那页,你开始阅读
controller 把资料传给 view ,view 依照 html 与 css 渲染画面最终看到网页

然後翻到下一页
网页点击某按钮,发出请求,再次 routing 找到网址,通知 controller ...

这边的发出请求是什麽意思呢?! 明天待续!!


<<:  使用模拟器

>>:  [Day02 - 规划与设计] 从生活中发想需求

分散式资料库:New SQL

分散式资料库可以依据资料模型及系统架构分类; OLAP(On-Line Analytical Pro...

【Day 07】领域驱动设计的战术设计(Tactical Design)

前言 上一篇我们讨论DDD的战略设计,说明系统范围如何切割成多个领域(Domain)、子领域(Sub...

【Day3】:STM32CubeIDE安装以及环境设定

CubeIDE简介 本文会使用STM32CubeIDE来当作开发平台,他可以自动的帮你把脚位的配置生...

JavaScript学习日记 : Day23 - 解构赋值

解构赋值(Destructuring Assignment)是一个在ES6的新特性,用於提取阵列或物...

【Day06】提升(Hoisting)

我们在进到主题前先来看一段程序码,随後在开发人员工具中观察执行过程 function doSomet...