我有两个模特学生和图像。学生可能有多个图像,最多4张图像。
在我的学生模型中,我添加了
has_many :images, dependent: :destroy
图片模型
mount_uploader :image, PhotoUploader
belongs_to :student, foreign_key: 'student_id'
validate do |record|
record.validate_image_number
end
def validate_image_number
return unless self.student
if self.student.images(:reload).count >= 4
errors.add(:base, 'Image limit exceeded')
end
end
StudentController.rb
Student.transaction do
@student.save!
if params[:images].present?
params[:images]['image'].each do |a|
@image = @student.images.create!(image: a)
end
end
end
return render json: { 'status': 'success'}
rescue => e
puts e
if @student
return render json: {'errors': @student.errors}, statuts: 422
else
return render json: { 'status': 'failure'}
end
我现在将student.errors作为{},如果我上传了超过4张图片,但异常消息是“超出图像限制”。如何在学生错误列表
中添加图像模型的错误消息