---
# System prepended metadata

title: 20221201 Rails
tags: [Ruby & Rails]

---

###### tags: `Ruby & Rails`
# 20221201 Rails

<政庭>
###  table欄位的狀態切換，不會是狀態(state)的切換。所以命名的時候可以用XXX-type 或是 role(角色)的概念來命名。

### STI(single table inheritance)

### 如果有多個table，裡面有多個欄位都會長的一樣，可以先建立一個有共同欄位的table。其他的table繼承它。

### 軟刪除要考慮，資料庫就要使用foreign key。

## Enum 列舉狀態

### 分類跟標籤的差別。

Rails 7 特色 (Turbo Drive / Turbo Stream / Turbo Frame)
1. 拿掉node modules目錄 and package.jason 檔案
2. 使用 importmap 代替 node 的那一包東西
3. 原本支援度 72% 因為有了 shims es-module-shim 支援度來到 95%
4. HOTWIRE 可以做到更多事情
5. 檔名.turbo_stream.erb 檔案類型可以等於 js.erb 的檔案類型
6. turbo frame : 框架換框架 利用 turbo_frame 標籤 帶 dom id 的方式

---
<侑庭>


### 多的表格東西差不多的時候可以用繼承的方式去做

### 軟刪除也是表格格規劃的一種,刪除得時候也會有連帶的關係要注意,然後現在幾乎每個表格都有軟刪除 , foreign key

### 資料夾跟tag差異性 舉例就是三個資料夾資料只能放在其中一個裡面,但是資料可以有很多的tag 

### extend 跟 include  很像但是差異性

### Rails 7 特色

1. 拿掉了node.js 跟package.jason
2. turbo_stream.erb 檔案等於js.erb 的檔案類型
3. turbo_frame 在轉址頁面上的類型

---
<于婷>
