iT邦幫忙

2023 iThome 鐵人賽

DAY 11
0
自我挑戰組

Rails 手工打造自己的部落格 系列 第 11

Rails 手工打造自己的部落格 11 -CRUD 02

  • 分享至 

  • xImage
  •  

我們可以從昨天的東西,來繼續探討,什麼是class(類別)?
這就可以提到Ruby的程式設計是屬於:

「物件導向」OOP

Object-oriented programming

簡單來說 物件導向程式程式設計的定義是使用「物件」來做設計,
每一個物件都應該能夠接受資料、處理資料並將資料傳達給其它物件
因此它們都可以被看作一個小型的「機器」,即物件。
當我們提到物件導向的時候,它不僅指一種程式設計方法。
它更多意義上是一種程式開發方式

三大特性

  1. 封裝(Encapsulation):
    將物件的狀態和行為封裝在一個單元中,並且只對外部提供有限的接口來訪問物件
  2. 繼承(Inheritance):
    通過建立一個新物件,讓其繼承一個或多個已有物件的屬性和方法
  3. 多型(Polymorphism):
    即一個物件可以被當作多個不同的物件使用,從而提高程式的靈活性和可擴展性

類與物件

支援物件導向程式語言通常利用繼承其他類達到代碼重用和可擴展性的特性。
而類有兩個主要的概念:

  1. 類(Class):定義了一件事物的抽象特點。類的定義包含了數據的形式以及對數據的操作。
    ex.就是我們昨天做出來的 Article 的 Model 。
  2. 物件(Object):是類的實例(Instance)
    ex.就是我使用 Article 這個類別,新增出來的文章。
    接著我們如果要自動化的製作出文章,就要先製作一個 article 的 controller
    一樣可以使用 Rails 的指令
$ rails g controller articles

它就會幫我們生出

      create  app/controllers/articles_controller.rb
      invoke  erb
      create    app/views/articles
      invoke  test_unit
      create    test/controllers/articles_controller_test.rb
      invoke  helper
      create    app/helpers/articles_helper.rb
      invoke    test_unit

我們來看第一個檔案
app/controllers/articles_controller.rb
這個檔案就是我們的控制器本人

class ArticlesController < ApplicationController
end

它一樣會繼承一個上層的 ApplicationController
第二個檔案就是它的view
view是什麼呢? view 就是會直接使用者互動的地方,及頁面本身。
但裡面的檔案就需要我們手動新增了
通常都是使用 html.erb 檔
我們可以直接在 app/views/articles
右鍵新增一個 index.html.erb
我們可以先在裡面先打

<h1> Hello World </h1>

然後去終端機開啟本地伺服器

$ rails s

直接在底下可以使用 (ctrl + 按一下)
下面這個網址
Listening on http://127.0.0.1:3000
或直接開一個瀏覽器輸入網址 http://localhost:3000/

就可以看到我們在頁面裡面寫的
Hello World

接著我們明天再繼續完成我們的文章偉業


上一篇
Rails 手工打造自己的部落格 10 - CRUD 之 Model 篇
下一篇
Rails 手工打造自己的部落格 12 - CRUD 03
系列文
Rails 手工打造自己的部落格 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言