From 6a43483a2f44d5024087ca0ac1d9bf9fc8d52c58 Mon Sep 17 00:00:00 2001 From: Oleksii Kriuchykhin Date: Wed, 26 Jul 2017 11:22:26 +0200 Subject: [PATCH] Fix adding and editing repository items [SCI-1519] --- app/controllers/repository_rows_controller.rb | 19 ++++++------------- app/models/repository_cell.rb | 1 - 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/app/controllers/repository_rows_controller.rb b/app/controllers/repository_rows_controller.rb index 111f7c3b2..9526bcc71 100644 --- a/app/controllers/repository_rows_controller.rb +++ b/app/controllers/repository_rows_controller.rb @@ -19,9 +19,7 @@ class RepositoryRowsController < ApplicationController record.transaction do record.name = record_params[:name] unless record_params[:name].blank? - unless record.save - errors[:default_fields] = record.errors.messages - end + errors[:default_fields] = record.errors.messages unless record.save if params[:repository_cells] params[:repository_cells].each do |key, value| column = @repository.repository_columns.detect do |c| @@ -94,9 +92,7 @@ class RepositoryRowsController < ApplicationController @record.transaction do @record.name = record_params[:name].blank? ? nil : record_params[:name] - unless @record.save - errors[:default_fields] = @record.errors.messages - end + errors[:default_fields] = @record.errors.messages unless @record.save if params[:repository_cells] params[:repository_cells].each do |key, value| existing = @record.repository_cells.detect do |c| @@ -128,15 +124,12 @@ class RepositoryRowsController < ApplicationController repository_column: column } ) - cell = RepositoryCell.new(repository_row: @record, - repository_column: column, - value: cell_value) - cell_value.repository_cell = cell - if cell.save - record_annotation_notification(@record, cell) + if cell_value.save + record_annotation_notification(@record, + cell_value.repository_cell) else errors[:repository_cells] << { - "#{column.id}": cell.errors.messages + "#{column.id}": cell_value.errors.messages } end end diff --git a/app/models/repository_cell.rb b/app/models/repository_cell.rb index 403362622..ad034e160 100644 --- a/app/models/repository_cell.rb +++ b/app/models/repository_cell.rb @@ -6,7 +6,6 @@ class RepositoryCell < ActiveRecord::Base belongs_to :value, polymorphic: true, dependent: :destroy validates :repository_column, presence: true - validates :value, presence: true validate :repository_column_data_type validates :repository_row, uniqueness: { scope: :repository_column },