Sha256: 99db2fb6a9a8e832c494dd42543e4f13ae9153868367e68881a04cffb3efc9b2

Contents?: true

Size: 751 Bytes

Versions: 5

Compression:

Stored size: 751 Bytes

Contents

class HotwireFormsController < ActionController::Base
  layout "application"

  def show
    @user = User.new(session[:user])
  end

  # GET /users/new
  def new
    @user = User.new(params[:user]&.permit!)

    render 'form'
  end

  # GET /users/1/edit
  def edit
    @user = User.new(name: "Yuki Nishijima")

    render 'form'
  end

  # POST /users
  def create
    @user = User.new(user_params)

    if @user.valid?
      session[:user] = user_params.to_h
      redirect_to hotwire_form_path(1)
    else
      render 'form', status: 422
    end
  end

  # PATCH/PUT /users/1
  def update
    @user = User.new(user_params)

    render(@user.valid? ? 'show' : 'form')
  end

  private

  def user_params
    params.require(:user).permit!
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
shoelace-rails-0.4.1 test/dummy_app/app/controllers/hotwire_forms_controller.rb
shoelace-rails-0.4.0 test/dummy_app/app/controllers/hotwire_forms_controller.rb
shoelace-rails-0.3.0 test/dummy_app/app/controllers/hotwire_forms_controller.rb
shoelace-rails-0.2.0 test/dummy_app/app/controllers/hotwire_forms_controller.rb
shoelace-rails-0.1.0 test/dummy_app/app/controllers/hotwire_forms_controller.rb