Ruby on Rails 開發實戰(Windows 環境)第 6 篇:美化後台商品列表頁面
本篇針對 Scaffold 產生的預設列表頁面進行美化,運用 CSS 交替列顏色、圖片縮圖、截斷描述與格式化價格,提升後台管理體驗。 修改列表視圖 編輯 ap
Ruby on Rails 開發實戰(Windows 環境)第 7 篇:建立線上購物首頁
承接後台商品維護功能,本篇建立前台購物首頁,展示可購買商品並提供「加入購物車」連結。 建立 Store 控制器 ruby script/generate co
Ruby on Rails 開發實戰(Windows 環境)第 8 篇:使用 Session 建立購物車
本篇在商品列表基礎上,逐步建立功能完整的購物車:資料表設計、模型關聯、Session 管理、加入商品邏輯、數量合併與視圖美化。 資料庫與模型準備 建立 lin
Ruby on Rails 開發實戰(Windows 環境)第 9 篇:購物車錯誤處理與異常捕捉
本篇針對購物車加入錯誤處理機制,模擬併發情境下商品被刪除後使用者仍嘗試加入購物車的情況,展示 Rails 如何優雅處理例外並回饋使用者。 併發衝突情境模擬
Ruby on Rails 開發實戰(Windows 環境)第 10 篇:清空購物車與金額格式化
延續上一篇為購物車加入錯誤處理,本篇實作兩項實用功能:清空購物車與金額顯示格式化。 清空購物車功能 首先在 store_controller.rb 新增 em
Ruby on Rails 開發實戰(Windows 環境)第 11 篇:實作訂單模組
承接上一篇完成購物車清空與金額格式化後,這次我們將著手建立訂單功能。訂單模組是電商系統的核心,涉及資料庫設計、模型關聯、控制器邏輯與視圖呈現。 資料庫遷移:建
Ruby on Rails 開發從頭來(十二):訂單儲存與驗證實作
結帳表單送出處理 # store_controller.rb def save_order @cart = find_cart @order = Ord
Ruby on Rails 開發從頭來(十三):結帳頁面整合購物車顯示
需求:結帳頁面同時顯示購物車明細 避免用戶在填寫訂單資訊時需切換頁面確認商品,將購物車內嵌於結帳頁。 結帳頁面引入購物車元件 render_compo
Ruby on Rails 開發從頭來(十四):訂單出貨處理功能
資料庫擴充:出貨時間欄位 alter table orders add column shipped_at datetime null; 控制器:出貨待處理清
Ruby on Rails 開發從頭來(十五):新增使用者管理功能
資料庫遷移 # 手動 SQL 或 migration create table users ( id int not null auto_increment
Ruby on Rails 開發從頭來(十六):實作使用者登入功能
登入流程設計 兩類用戶:一般消費者(瀏覽、購物)、管理員(商品/訂單/用戶管理)。登入成功後存入 session[:user_id],後續請求透過 Filter
Ruby on Rails 開發從頭來(十七):使用 Filter 控制存取權限
Filter 機制簡介 Rails 控制器提供三種過濾器,可在動作執行前/後/環繞插入邏輯: before_filter:動作前執行,回傳 false 或 r
Ruby on Rails 開發從頭來(十八):使用 RDoc 自動產生專案文件
RDoc 簡介 RDoc 是 Ruby 內建文件產生工具,從原始碼註解提取類別、模組、方法、屬性文件,產生 HTML 格式 API 文件。 產生文件指令 r
Ruby on Rails 開發從頭來(十九):單元測試啟動與 Fixture 資料載入
測試目錄結構 test/ ├── unit/ # 模型測試 ├── functional/ # 控制器測試 ├── integrat
Ruby on Rails 開發從頭來(二十):模型 CRUD 測試實作
測試環境準備 執行 rake clone_structure_to_test 同步開發資料庫結構到測試庫。 定義 test/fixtures/products.
Ruby on Rails 開發從頭來(二十一):模型測試常見問題排查
問題現象 按照教材撰寫模型測試時,使用 @products[version_control_book] 存取 fixture 物件總是回傳 nil,導致 NoM
Ruby on Rails 開發從頭來(二十二):登入控制器測試實戰
LoginController 測試骨架 require File.dirname(__FILE__) + /../test_helper require lo
Ruby on Rails 開發從頭來(二十三):功能測試慣用斷言與輔助方法完整參考
HTTP 請求模擬方法 五大 HTTP 動詞對應方法,簽名一致: get(action, parameters = nil, session = nil, fl