Ruby: Railsコントローラアクション

このドキュメントはRubyを学ぶガイドの一部です。完全なガイドはこちらからご覧いただけます:包括的なRubyとRailsガイド

👋 Stackheroのドキュメントへようこそ!

Stackheroは、数多くの利点を提供する、すぐに使えるRubyクラウドソリューションを提供しています。

  • シンプルなgit pushでアプリケーションを数秒でデプロイ
  • 独自のドメイン名を使用し、HTTPS証明書の自動設定による強化されたセキュリティを享受。
  • 自動バックアップワンクリック更新、そしてシンプルで透明性があり、予測可能な価格設定で安心を提供。
  • プライベートで専用のVMによる最適なパフォーマンスと強固なセキュリティを実現。

時間を節約し、生活を簡素化:StackheroのRubyクラウドホスティングソリューションを試すのに5分しかかかりません

コントローラは、モデルとビューの間の仲介役として、受信リクエストを受け取り、適切なレスポンスをレンダリングします。以下の例は、リソースのリスト表示、表示、作成、更新、削除のための一般的なコントローラアクションを示しています。

  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