the rails philosophy includes two major guiding principles:

Don't repeat yourself: DRY is a principle of software development which states that "Every piece of knowledge must have a single, unambiguous, authoritative representation within a system". By not writing the same information over and over again. our code is more maintainable,   more extensible, and less buggy.

Convention over Configuration: Rails has opinions about the best way to do many things in a web application, and defaults to this set of conventions, rather than require that you specify every minutiae through endless configuration files.



通过rubyonrails-guides,建立一个博客(全英文阅读)

命令:

rails new -h //看帮助help.

link_to  //method,Rail's built-in view helpers.

**

<%= link_to("My Blog", controller: "articles")%>  //当你链接到一个行为,而不在同一个controller的时候,你需要指定:controller option.

注释:⚠️ guide里有关于调用error_explanation的使用方法。如:pluralize(), @name,errors.full_messages.


❌:

1.undefined method `each' for nil:NilClass

分析:问题出在nilclass,each指向的class是空的。看一下传入的实例变量名字是不是写错了。


单词:

distinction:(区别)

trm/ (temporary:) 临时文件,缓存和pid

execute(kill sb/do sth/ferform an action)

malicious [mə'lɪʃəs]  (very unkind  and cruel, and deliberately behaving in a way that is likely to upset or hurt someone )

proceed:(verb, continue to do one thing)

process:(n,过程,进程,v,加工处理食品,数据等)

retrieve [rɪ'triːv]: to find sth and bring it back formal. to get back information that has been stored in the memory of a computer technical.检索。


new.html.erb 文件中。文件的扩展名很重要:第一个扩展名是模板格式,第二个扩展名是模板处理器。这个模板的格式只能是 html,模板处理器只能是 erbbuilder和 coffee 中的一个。:erb 是最常用的 HTML 模板处理器,:builder 是 XML 模板处理器,:coffee 模板处理器用 CoffeeScript 创建 JavaScript 模板。因为我们要创建 HTML 表单,所以应该使用能够在 HTML 中嵌入 Ruby 的 ERB 语言。

5.6 saving data in the controller

Class names in Ruby must begin with a capital letter.

render plain: params[:article].inspect 返回参数key的值并显示在屏幕上。

5.10 Adding Some Validation

redirect_to 和 render的一个区别

redirect_to :tell the browser to issue another request.(因此效能较低)

render: is done within the same request as the form submission(submit提交)

5.11 Updating Articles

@article.update(article_params) 更新全部,也可以更新部分内容,如下:

@article.update(text:"A new title")

formhelper activeview::helpers

http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-form_for-label-Resource-oriented+style

t.integer :supplier_id 更明确地表明了外键的名称。在目前的 Rails 版本中,可以抽象实现的细节,使用 t.references :supplier 代替。

foreign_key 用于定义给关联的索引换一个名字

@comment = @article.comments.create  //create相当于new and save.

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #3d3d3d; -webkit-text-stroke: #3d3d3d}
span.s1 {font-kerning: none}

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Arial; color: #666666; -webkit-text-stroke: #666666}
span.s1 {font-kerning: none}

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #646464; -webkit-text-stroke: #646464}
span.s1 {font-kerning: none}

11月29日 The Rails philosophy 完成rails on guide 的第一章getting started with rails的更多相关文章

  1. 2016年11月29日 星期二 --出埃及记 Exodus 20:20

    2016年11月29日 星期二 --出埃及记 Exodus 20:20 Moses said to the people, "Do not be afraid. God has come t ...

  2. 20162311 解读同伴的收获&解决同伴的问题(11月29日,周三)

    20162311 解读同伴的收获&解决同伴的问题(11月29日,周三) 解读同伴的收获 我的同组同学是20162325学号金立清同学 同组同学的收获是:递归算法的非递归实现.分治法.动态规划法 ...

  3. 北京Uber优步司机奖励政策(11月23日~11月29日)

    用户组:人民优步"关羽组"(适用于11月23日-11月29日)奖励政策: 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最 ...

  4. 打开随身U盘_办公专用盘 2019年11月29日

    ;;; ; 打开随身U盘_办公专用盘 2019年11月29日 ; https://www.autoahk.com/?p=16553; https://www.cnblogs.com/delphixx/ ...

  5. 对OpenGL的GLFrame框架进行的扩展截至2014年11月29日

    框架源自<OpenGL游戏编程>,增加了此框架的部分功能.其中有些小错误,尤其是MD2模型的那章,给出的框架只支持载入一个BOSS,当再载入一个BOSS时,就会发现两个模型的帧速会乱套. ...

  6. Appium最新的服务器初始化参数(Capability)【截止11月29日,后续最新的可以看github】

    键 描述 值 automationName 自动化测试的引擎 Appium (默认)或者 Selendroid platformName 使用的手机操作系统 iOS, Android, 或者 Fire ...

  7. 西安OpenParty11月29日活动高清图文回顾——新增西安APEC蓝美图!

    本次活动由西安OpenParty负责线下活动组织运营,线上由InfoQ-QClub.OSChina协办. OSChina活动召集帖:运维为王——应用系统.DevOps与Docker(11月29日) I ...

  8. Git学习(二)(2015年11月18日)(2016年1月29日)

    2015年11月18日Git学习: .Shell 删除文件夹及其所有文件 rd/s/q 文件目录 ---------------当前为先创建本地Git库后与网上Git服务器关联------------ ...

  9. 本周MySQL官方verified/open的bug列表(11月8日至11月14日)

    本周MySQL verified的bug列表(11月8日至11月14日) 1. Bug #70859-DWITH_EXAMPLE_STORAGE_ENGINE=1 is ignored     URL ...

随机推荐

  1. Flutter第1天--初始分析+Dart方言+Canvas简绘 - 云+社区

    Flutter第1天--初始分析+Dart方言+Canvas简绘 - 云+社区 - 腾讯云 https://cloud.tencent.com/developer/article/1378974

  2. ubuntu安装微软雅黑和Consolas字体

    原文:http://fooler5.iteye.com/blog/2406227 [字体下载] YaHeiConsolas.tar:http://www.mycode.net.cn/wp-conten ...

  3. Symbol在对象中的作用

    Symbol的打印 我们先声明一个Symbol,然后我们在控制台输出一下. var g = Symbol('jspang'); console.log(g); console.log(g.toStri ...

  4. Shiro学习笔记 三(认证授权)

    第一种首先基于角色的权限控制 1.由于不断的创建SecurityFactory工程等步骤重复多次,所以应该将这些步骤封装成一个工具类 还是首先看一下目录结构 主要用到文件 首先贴一下工具类的方法 pa ...

  5. Tomcat下webapps夹中root文件夹作用及如何发布项目至root文件夹中

    转载请注明出处: tomcat的root文件夹下面默认是tomcat的管理程序,但是如果你把自己的web项目发布到root下面的话,你可以不通过项目名直接访问你的项目,比如,你见了一个名为Test的项 ...

  6. URAL 1004 Sightseeing Trip(floyd求最小环+路径输出)

    https://vjudge.net/problem/URAL-1004 题意:求路径最小的环(至少三个点),并且输出路径. 思路: 一开始INF开大了...无限wa,原来相加时会爆int... 路径 ...

  7. 语法对照表ES5VSES6

    模块 导入 在ES5里面,如果使用CommonJS的标准,引入包一般是使用require来的 //ES5 js var React = require("react") var { ...

  8. React native 之android的图标和启动图片

    哎哎呀呀,上篇说到了react native的IOS的图标和启动图片的设置,其实最主要的是尺寸!相应的尺寸设定好了以后就不会报错了! ok~这篇说的是React native的android的图标和启 ...

  9. 异步加载script,提高前端性能(defer和async属性的区别)

    一.异步加载script的好处 为了加快首屏响应速度,前端会采用代码切割.按需加载等方式优化性能.异步加载script也是一种前端优化的手段. 就好比如果我的页面其中一个功能需要打开地图,但是地图的j ...

  10. ECMAScript6语法重点(一)

    一. let和const ①let声明的变量只在它的块作用域有效({ }括起来) ②let不能重复声明同一变量 ③const声明的常量不能改(但对象可以加属性) ④const也有块作用域概念 ⑤con ...