diff --git a/app/controllers/tag_disciplines_controller.rb b/app/controllers/tag_disciplines_controller.rb index b527e455d..2650f51eb 100644 --- a/app/controllers/tag_disciplines_controller.rb +++ b/app/controllers/tag_disciplines_controller.rb @@ -2,6 +2,8 @@ class TagDisciplinesController < ApplicationController before_action :require_login def create - + sub_discipline = SubDiscipline.find_by!(id: params[:sub_discipline_id]) + tag_discipline = TagDiscipline.create!(name: params[:name].to_s.strip, sub_discipline: sub_discipline, user_id: current_user.id) + render_ok({tag_discipline_id: tag_discipline.id}) end end \ No newline at end of file diff --git a/app/models/tag_discipline.rb b/app/models/tag_discipline.rb index 24567505e..6be032a58 100644 --- a/app/models/tag_discipline.rb +++ b/app/models/tag_discipline.rb @@ -1,8 +1,10 @@ class TagDiscipline < ApplicationRecord belongs_to :sub_discipline - belongs_to :user + belongs_to :user, optional: true has_many :tag_discipline_containers, dependent: :destroy + validates_presence_of :name + def discipline sub_discipline&.discipline end diff --git a/config/routes.rb b/config/routes.rb index 24edd4109..2c60a703e 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -56,6 +56,7 @@ Rails.application.routes.draw do end resources :disciplines, only: [:index] + resources :tag_disciplines, only: [:create] resources :item_banks do member do diff --git a/db/migrate/20200102020737_migrate_item_type.rb b/db/migrate/20200102020737_migrate_item_type.rb new file mode 100644 index 000000000..d5a247926 --- /dev/null +++ b/db/migrate/20200102020737_migrate_item_type.rb @@ -0,0 +1,6 @@ +class MigrateItemType < ActiveRecord::Migration[5.2] + def change + add_column :item_banks, :container_id, :integer + add_column :item_banks, :container_type, :string + end +end