Class: Infold::ColumnsController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- Infold::ColumnsController
- Defined in:
- app/controllers/infold/columns_controller.rb
Instance Method Summary collapse
Instance Method Details
#bulk ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'app/controllers/infold/columns_controller.rb', line 8 def bulk @model = Model.find(params[:model_id]) @model.assign_attributes(bulk_params) if @model.save flash.now[:info] = t('infold.flash.updated') @columns = @model.columns.sort_by(&:seq) else @columns = @model.columns.sort_by(&:seq) flash.now[:warning] = t('infold.flash.invalid') render status: :unprocessable_entity end end |
#edit ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'app/controllers/infold/columns_controller.rb', line 21 def edit # 詳細設定を表示 @column = ModelColumn.find(params[:id]) @column.kind = params[:kind] case @column.kind when 'enum' 2.times { |i| @column.enums.build } if @column.enums.blank? @column.enums = @column.enums.sort_by{ |v| v.value || 999 } render 'infold/enums/index' when 'reference' @column.build_model_association if @column.model_association.blank? render 'infold/associations/edit' else render 'edit' end end |
#index ⇒ Object
3 4 5 6 |
# File 'app/controllers/infold/columns_controller.rb', line 3 def index @model = Model.find(params[:model_id]) @columns = @model.columns.sort_by(&:seq) end |
#update ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 |
# File 'app/controllers/infold/columns_controller.rb', line 38 def update @column = ModelColumn.find(params[:id]) @column.assign_attributes(post_params) if @column.invalid?(:detail) flash.now[:warning] = t('infold.flash.invalid') render status: :unprocessable_entity else # ここではflash設定しない。また、detail以外のvalidエラーに備えて、save!ではなくsaveとする @column.save end end |