Ruby: Rails 控制器動作

此文件屬於學習 Ruby指南的一部分。請在此處查看完整指南:一個全面的 Ruby 和 Rails 指南

👋 歡迎來到 Stackhero 文檔!

Stackhero 提供一個即用型的 Ruby cloud 解決方案,帶來多種好處,包括:

  • 只需一個簡單的 git push,即可在幾秒鐘內 部署您的應用程式。
  • 使用您自己的域名,並享受 HTTPS 證書的自動配置以增強安全性。
  • 享受自動備份一鍵更新,以及簡單、透明和可預測的定價,讓您安心無憂。
  • 得益於專用的私人 VM,獲得最佳的性能和強大的安全性

節省時間簡化您的生活:只需 5 分鐘即可嘗試 Stackhero 的 Ruby cloud hosting 解決方案!

控制器作為模型和視圖之間的中介,接收傳入的請求並渲染適當的響應。以下示例說明了列出、顯示、創建、更新和刪除資源的常見控制器動作:

  1. 索引動作(列出所有對象):

    def index
      @objects = ModelName.all
    end
    
  2. 顯示動作(顯示單個對象):

    def show
      @object = ModelName.find(params[:id])
    end
    
  3. 新建動作(顯示新對象的表單):

    def new
      @object = ModelName.new
    end
    
  4. 創建動作(保存新對象):

    def create
      @object = ModelName.new(params.require(:model_name).permit(:field1, :field2))
      if @object.save
        redirect_to @object
      else
        render :new
      end
    end
    
  5. 編輯動作(顯示編輯現有對象的表單):

    def edit
      @object = ModelName.find(params[:id])
    end
    
  6. 更新動作(應用對現有對象的更改):

    def update
      @object = ModelName.find(params[:id])
      if @object.update(params.require(:model_name).permit(:field1, :field2))
        redirect_to @object
      else
        render :edit
      end
    end
    
  7. 刪除動作(刪除對象):

    def destroy
      @object = ModelName.find(params[:id])
      @object.destroy
      redirect_to model_name_path
    end