在开始一个专案的时候,新手常常不知道从哪边开始
决定整理一下专案製作的流程
本文主要陈述思考的脉络,执行的指令就不赘述
如果有错,也请路过的各位高手不吝指教
那么我们便开始吧~
建立专案,最一开始当然是要 new 一个专案啰~
不过新手常常直接就 new 下去了,若是直接 new 一个新专案,rails 会使用目前环境最新的版本产出档案。不过跟着一些线上课程或是一些线上资源操作的时候,教材也许不是使用最新版本的rails。因此建议在建立专案的时候指定适合的版本,指定的方法如下:
#记得在版本前后要加入底线rails _6.1.4.6_ new myproject
如果你还没有rails 6
那么你可以先执行
# -v 后面请依照需求设定版本 gem inatall rails -v 6.1.4.6
想知道自己现在的版本可以执行
rails -v
若之前没有使用过rails 6,在建立新专案前,要先安装 yarn 这个套件,许多人在初尝试rails安装环境失败,通常都是没有先安装 yarn
brew install yarn
以上步骤执行顺利的话,最难的部分已经结束XD
接下来的步骤是给常常不知道下一步该做什么的新手参考
了解rails的开发模式
Rails 是利用 MVC 的设计模式开发, MVC 由 Model、View、及 Controller所组成,如果还不清楚的朋友,建议可以先停下来,了解一下 MVC 的架构。了解 MVC 分别在做什么,才能知道自己下一步应该做些什么事。
首先,要看到首页,可以先想一下,每次你在看别的网页的时候,是不是都有一串网址在上面,有了网址伺服器才知道你现在想要去哪里。
永远先想路由该怎么设计
所以,现在你应该想一下你的路由要叫什么名字。并到 config 底下找到 routes.rb,设定路由,决定好路由后,便可以开始建立 controller 设定方法,而既然 controller 设定好了,要看到页面,还要到 view 去产生和 controller 方法相对应的页面名称
需要资料表,你就需要想到建立Model
页面有了,接着就会想要在页面呈现一些资料,如果需要存取资料,那么就要有 model ,产生 model 的时候也会产生 migrate ,确认 migrate 没问题后,记得存档,并执行rails db:miagrate ,资料才会真的在 schema 喔!
以上顺序每个人可能习惯略有不同,不过在专案要做某个 action 的时候,都应该要想一下,路由该怎么送,知道路由后,才会知道页面要往哪去,确定好路由后,就明白 controller 要做什么,也会知道你需要怎么样的 view 页面啰~
CRUD
CRUD 通常顺序是有了 index,之后会建立表单,送出的 button 通常想要 create 某个东西,因此需要先产生new action,每次做完 action都要想到相对应的页面,通常需要再去製作一个 html.erb档,这时就要想到,现在準备建立的表单可以重複使用,因此可以建立一个 partial form 档案,而在原本的new表单就可以直接render表单。
C
表单建立完成,要送出资料,就要 create 出一个物件,这时候,就需要 create 的 action,在这个 action,需要考虑新增成功以及新增失败两种情况。
R
新增完成,想要检视资料,就会回到 index 页面,想在 index 的页面看到资料,就需要回到 controller 在 index 的 action 设定。
U
以上资料完成后,接着可能需要编辑或是删除,一样,在编辑的时候,需要同时想到 edit 以及 update 两个action,而 edit 页面,因为和 new 使用的表单一样,所以可以render刚刚的表单,送出资料的时候rails会自动判断资料是想要新增还是更新,而在 update 的时候,一样要思考更新成功以及更新失败的状况~
D
最后是删除资料,删除资料就没有这么複杂啰,找到资料后,把它删除即可(在更熟练之后,需要考虑这个资料是否要真的删除或是软删除,但这个环节就留到以后练习啰)