Ruby on Rails 实战圣经

使用 Rails 5.0+ 及 Ruby 2.3+

欢迎留下 E-mail,若有更新消息可以通知您。若您有任何意见、鼓励或勘误,也欢迎来信给我。愿意赞助支持的话,这是我的支付宝微信

关于本书

The biggest mistake that you can make is to believe that you are working for somebody else. Job security is gone. The driving force of a career must come from the individual. Remember: Jobs are owned by the company, you own your career! - Earl Nightingale

本书涵盖了Ruby on Rails绝大部分的常用功能以及介绍,为了兼顾入门及实战,本书拆分成两个部分:Part 1前八章为入门实践,一步一步实作出一个活动管理系统、Part 2为深度剖析各种元件和高阶议题。本书期许可以让有些许经验的网页程式设计师,可以在本书中学习Rails之道,将之实际应用在工作之中。

关于作者

张文钿,网络上的代号为ihower,曾担任日本RubyKaigi、中国RubyConf China、台湾RubyConf TaiwanCOSCUPWebConf.TW历届讲者。2006年开始接触Rails,从此爱上Ruby这个极具丰富乐趣及高生产力的程式语言。

笔者的部落格 https://ihower.tw 以及 Twitter 帐号 @ihower ,欢迎追踪订阅。

目标读者

本书的目标读者为网站开发工程师(Web Application Developer),比较不适合完全没有网页开发经验的朋友,在学习 Rails 前,最好对以下知识有基本认识:

如果您有PHP/MySQLNode.jsASP、JSP等网页应用程式开发经验,相信这些对您应该不陌生。

软件版本

本书支持的最新Rails版本是5.1Ruby版本是2.4,并向下相容至 Rails 5.0+ 和 Ruby 2.3+,若有差异会特别补充说明。本书出版后请参考本书网站以获得最新相容性修改。

本书网站

你可以在 https://ihower.tw/rails/ 看到本书最新版本以及纸本勘误。如果你有任何问题,也欢迎来信给我。

本书体例

为了避免读者混淆指令的使用情境,区分如下:

  • 钱号$开头的是指命令列下的指令
  • 大于>开头的是指在rails console主控台下的指令
  • 井号#是注解说明
  • 其他则是程式原始码

例如在以下的操作中,我们先输入了rails console进入Rails的主控台,然后输入Person.firstPerson.count

Style screenshot

那么在本书中,会这样书写:

$ rails console
Loading development environment (Rails 5.1.0.rc2)
> Person.first # <Person id: 1>
> Person.count # 1

简体版致谢

本书简体版透过 siuying/zhconv 进行繁简互换,在此感谢。

致谢

本书起初的材料来源,来自于准备中研院自由软件铸造场 OSSF 自 2008 年起主办的Ruby on Rails工作坊课程,感谢OSSF对于开源软件和开源社群的支持。本书在撰写过程也收到非常多台湾和中国大陆读者来信勘误指教,对这本书产生了良性回馈,在此感谢:hSATAC、timloo0710、seekcalm、ETBlue、Michael Wang、liukai、inepalon、Ya-yu Huang、aiasfina、David Chuang、Yu-Yao Chang、yang thomas、inepalon、guan-ting chen、Eric.Xiong、pptpb.tw、saitoTK、le jerry、jeffchen1453、EvenWu、Jasper CAI、dreamy0909、JmeHsieh、逍遥、Mark GK、LiChun、tonytonyjan、Kang-Yu Li、曾小黑、Pomin Chen、jzg、ayaya、Juanito Fatas、红音也、Vincentzh、idarfan、lixing、jerrycheng、maxz、TaopaiC、Fukuball、klobo、liyq205、EIA ANG、caiguo、良葛格、Lam、Daniel Tsai、Hillman Yang、sdjcw13、Jingqiang、foxzool、danix、Yang Weiqi、周裕波、David Chang、张杰、Sgar Wang、zw963、feynixs、Youhua Wang、韩冰、Silver Chen、Kerby Wang、贵超、everyx Lo、shch、David Huang、士扬、Dars、小强、Daniel Yuen、Kevin Shen、floydsoft、Yuan-Hong Zeng、纪东、浩翔、Cray Kao、Theresa、奕辰、WM、Po-Yu、ZhaoZijie、Sean Chen、克彦、庆冲、Gary Cruise、Lester、yousheng、诗凯、Wei-Luan、Zen David、beta shepherd、佳和、凤祥、odin、ChengYu、Bill Chang、Yuting、家伦、Hwang Acer、Losepacific、yellowstar520、lcc、Phoebe Chang、 Akii、illusion、冠雄、Meng-Ying、Su Billy、nico zhang、圣明、Kai Yang、竑昕、Singhigh、Ya Ian

感谢gogojimmy雨苍Juanito Fatas协助撰写了部分内容和润稿。

感谢ALPHA Camp(台北)网站开发工程师实战营、新生大学全栈营(北京)让我获得宝贵的教学相长经验。学员们强烈的求知慾,也不断推进本书的进度。

》回到页首