Ruby: Rails 控制器動作

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

👋 歡迎來到 Stackhero 文件中心!

Stackhero 提供即時可用的 Ruby cloud 解決方案,帶來多項優勢,包括:

  • 只需一個簡單的 git push,即可在數秒內部署您的應用程式。
  • 可使用您自己的網域名稱,並享有自動設定HTTPS 憑證,提升安全性。
  • 享有自動備份一鍵更新,以及簡單、透明且可預測的計價
  • 憑藉專屬私有基礎架構,獲得最佳效能與強大安全性

節省時間簡化您的工作流程:只需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