This commit is contained in:
@@ -148,11 +148,11 @@ class PostsController < ApplicationController
|
||||
post.reload
|
||||
render json: PostRepr.base(post), status: :created
|
||||
rescue Tag::NicoTagNormalisationError
|
||||
head :bad_request
|
||||
render_bad_request('ニコニコ・タグは直接指定できません.', field: :tags)
|
||||
rescue ArgumentError => e
|
||||
render json: { errors: [e.message] }, status: :unprocessable_entity
|
||||
render_unprocessable_entity(e.message)
|
||||
rescue ActiveRecord::RecordInvalid => e
|
||||
render json: { errors: e.record.errors.full_messages }, status: :unprocessable_entity
|
||||
render_model_errors(e.record)
|
||||
end
|
||||
|
||||
def viewed
|
||||
@@ -175,10 +175,10 @@ class PostsController < ApplicationController
|
||||
|
||||
force = bool?(:force)
|
||||
merge = bool?(:merge)
|
||||
return head :bad_request if force && merge
|
||||
return render_bad_request('force と merge は同時に指定できません.') if force && merge
|
||||
|
||||
base_version_no = parse_base_version_no
|
||||
return head :bad_request if !(force) && !(base_version_no)
|
||||
return render_bad_request('base_version_no は必須です.', field: :base_version_no) if !(force) && !(base_version_no)
|
||||
|
||||
title = params[:title].presence
|
||||
tag_names = params[:tags].to_s.split
|
||||
@@ -238,11 +238,11 @@ class PostsController < ApplicationController
|
||||
json['tags'] = build_tag_tree_for(post.tags)
|
||||
render json:, status: :ok
|
||||
rescue Tag::NicoTagNormalisationError
|
||||
head :bad_request
|
||||
render_bad_request('ニコニコ・タグは直接指定できません.', field: :tags)
|
||||
rescue ArgumentError => e
|
||||
render json: { errors: [e.message] }, status: :unprocessable_entity
|
||||
render_validation_error(fields: { parent_post_ids: [e.message] })
|
||||
rescue ActiveRecord::RecordInvalid => e
|
||||
render json: { errors: e.record.errors.full_messages }, status: :unprocessable_entity
|
||||
render_validation_error(e.record)
|
||||
end
|
||||
|
||||
def changes
|
||||
@@ -416,7 +416,7 @@ class PostsController < ApplicationController
|
||||
|
||||
def sync_parent_posts! post, parent_post_ids
|
||||
if parent_post_ids.include?(post.id)
|
||||
post.errors.add(:base, '自分自身を親投稿にはできません.')
|
||||
post.errors.add(:parent_post_ids, '自分自身を親投稿にはできません.')
|
||||
raise ActiveRecord::RecordInvalid, post
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user