第2章 Instant Gratification

复习 和 练习第一章,新建rails web页面。

重点:

  1. 知道了类,方法,实例变量 在rails是怎么用的。
  2. rails generate controller 类名(contorller) 方法名(action)。会产生路径get 'control名/action名'
  3. 页面生成的工作。(重点)
  4. 以及一些细小知识点。
页面生成的工作。(重点):
  1. URL访问web页面。
  2. Rails按照约定用路由对URL地址进行 model pattern模式匹配。得到2部分匹配结果:第一部分say,作为控制器的名称,Rails新建SayController类的实例
  3. 第二部分hello,作为action的名称。Rails调用controller中的同名method动作。
  4. Rails查找view,对应的模块文件 /say/hello.html.erb
  5. ERB系统处理模块文件,执行其中的Ruby代码,使用控制器设置的值对view中的实例变量进行替换。
  6. Rails把处理结果return to Browser.

第3章 The Architecure of Rails Applications

mvc架构创建Web应用。

Rails Model Support : Object-Relational Mapping(对象关系-映射)ORM库

ORM库把数据表映射到类上,把每条记录映射到每个对象,把字段映射到对象的属性上。

类方法用于执行表级别的操作,实例方法执行对记录的操作。

Active Record 是Rails提供的ORM库,约定大于配置,让程序员专注业务逻辑,和数据验证。

Action Pack: The View and Controller. 绑定了对视图和控制器的支持。但编写程序时,要分开控制逻辑和表现逻辑。

View Support:视图负责响应,包括响应浏览器,应用处理,邮件处理等。视图包括由controller动作生成的动态内容:

  1. 嵌入式Ruby(ERB)
  2. JavaScript片段
  3. XML Builder ,创建xml文档

the Controller:p45


第4章 Ruby简介。

推荐《Programming Ruby》镐头书

⚠️ :

Rails自动把辅助方法模块min-in适当的View中 P58. 在app/helper目录下找对应的文件,然后定义module.

对象序列化不太明白。


第6章,Task A: Creating the Application.

controller_name()

Returns the last part of the controller's name, underscored, without the ending Controller. For instance, PostsController returns posts. Namespaces are left out, so Admin::PostsController returns posts as well.返回string,用于在view中给页面使用css美化,等同于样式表的类名。


3-23Agile Web Development,3-24(chapter: 6)的更多相关文章

  1. Web开发秘方(WEB DEVELOPMENT RECIPES)[47.5MB] PDF扫描版

    不借助插件怎样在移动设备上实现动画效果?怎样快速搭建HTML电子邮箱?怎样制作跨PC和移动设备显示的应用界面?怎样利用最新的JavaScript框架提高应用的响应速度?怎样有效利用CoffeeScri ...

  2. Beginners Guide To Web Development

    Web Development Front End Development Back End Development

  3. Web Development Terms

    I've come across lots of terms while learning web development. I'm feeling myself overwhelmed. Here ...

  4. <Web Scraping with Python>:Chapter 1 & 2

    <Web Scraping with Python> Chapter 1 & 2: Your First Web Scraper & Advanced HTML Parsi ...

  5. Reloading Java Classes 301: Classloaders in Web Development — Tomcat, GlassFish, OSGi, Tapestry 5 and so on Translation

    The Original link : http://zeroturnaround.com/rebellabs/rjc301/ Copyright reserved by Rebel Inc In t ...

  6. 《Agile Web Development With Rails》读后感--rails基于web设计的best Practices

    最近看完<Agile Web Development with Rails>一书,受益匪浅.书中先是用一个简单的web应用带你进入Rails的世界,然后在你大致熟悉之后,再带你了解Rail ...

  7. 《Web Development with Go》实现一个简单的rest api

    设计模式完了之后,应该实现具体的应用了. 设计模式还得没事就要复习. web应用,学习的是网上的一本书. <Web Development with Go> package main im ...

  8. 【外文阅读】Web Development in 2020: What Coding Tools You Should Learn---Quincy Larson

    原文链接:https://mail.qq.com/cgi-bin/readtemplate?t=safety&check=false&gourl=https%3A%2F%2Fwww.f ...

  9. Full Stack Web Development

    Full Stack Web Development Web Stacks MEAN (Mongo, Express, Angular and Node) LAMP (Linux, Apache, M ...

  10. web development all in one

    web development all in one https://javascript.xgqfrms.xyz/web-development-all-in-one.html refs https ...

随机推荐

  1. 【转】Java学习:Java中的线程之线程间的通信

    hello各位小伙伴 今天我们来搞一下 线程之间的通信 ( • ̀ω•́ )✧ 让线程按照我们的想法来执行 两个线程间的通信 这是我们之前的线程. 执行效果:谁抢到资源,谁运行~ 实现线程交替执行: ...

  2. python webdriver操作浏览器句柄

    断言 assert self.driver.title.find(u"搜狗搜索引擎")>=0, "assert error" 浏览器后退,前进,前进前要先 ...

  3. 解析分布式锁之Zookeeper实现(一)

    实现分布式锁目前有三种流行方案,分别为基于数据库.Redis.Zookeeper的方案,本文主要阐述基于Zookeeper的分布式锁,其他两种会在后文中一起探讨.现在我们来看下使用Zookeeper如 ...

  4. [VTK]基于VTK的三维重建

    https://www.cnblogs.com/dawnWind/archive/2013/02/17/3D_06.html 0. Background 很久很久以前记录了一下使用WPF进行三维重建的 ...

  5. 20180112final和static

    final关键字 fianl关键字可以修饰类.成员变量.和方法中的局部变量. (java中的局部变量?定义在方法中的变量都是局部变量,使用前必须初始化) 1.fianl类 Final类不能被继承,即可 ...

  6. TED #09# You don't have to be an expert to solve big problems

    Tapiwa Chiwewe: You don't have to be an expert to solve big problems Collection noticed a haze hangi ...

  7. python序列化数据

    在python中序列化数据可以使用两种不同模块,一种是json格式,另一种是pickle模块! 序列化的概念: 序列化:将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是JSON ...

  8. C++ 表示一个区间值得方法

    C++中不允许这样的写法 85<= score <=100;你要想表示85<=score<=100的话只能这么写score>=85&&score<= ...

  9. c# &与&& 和 |与||的区别

    &:按位与,对两个条件都进行判断 &&:逻辑与,只要一个条件满足,另外一个条件就不会执行 同理: |:按位或,对两个条件都进行判断 ||:逻辑或,只要一个条件满足,另外一个条件 ...

  10. CenterOS下从零起步简单部署RockMongo

    使用Mongodb,对于调试Query,查看Collection等状态,有Rockmongo是非常方便的. 研究了下Rockmongo的部署,主要是依赖PHP环境的web服务器,当前有两种服务器,一种 ...