feat: Wiki 過去版取得で更新日時が異なる問題修正(#111) (#207)

#111

Merge remote-tracking branch 'origin/main' into feature/111

Merge branch 'main' into feature/111

#111

Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #207
This commit was merged in pull request #207.
This commit is contained in:
2026-01-17 09:15:54 +09:00
parent c8c262e34d
commit dd838fdf80
@@ -154,8 +154,7 @@ class WikiPagesController < ApplicationController
def render_wiki_page_or_404 page def render_wiki_page_or_404 page
return head :not_found unless page return head :not_found unless page
if params[:version].present? rev = find_revision(page)
rev = page.wiki_revisions.find_by(id: params[:version])
return head :not_found unless rev return head :not_found unless rev
if rev.redirect? if rev.redirect?
@@ -168,29 +167,18 @@ class WikiPagesController < ApplicationController
revision_id = rev.id revision_id = rev.id
pred = page.pred_revision_id(revision_id) pred = page.pred_revision_id(revision_id)
succ = page.succ_revision_id(revision_id) succ = page.succ_revision_id(revision_id)
updated_at = rev.created_at
return render json: page.as_json(methods: [:title]) render json: page.as_json(methods: [:title])
.merge(body:, revision_id:, pred:, succ:) .merge(body:, revision_id:, pred:, succ:, updated_at:)
end end
rev = page.current_revision def find_revision page
unless rev if params[:version].present?
return render json: page.as_json(methods: [:title]) page.wiki_revisions.find_by(id: params[:version])
.merge(body: nil, revision_id: nil, pred: nil, succ: nil) else
page.current_revision
end end
if rev.redirect?
return (
redirect_to wiki_page_by_title_path(title: rev.redirect_page.title),
status: :moved_permanently)
end
body = rev.body
revision_id = rev.id
pred = page.pred_revision_id(revision_id)
succ = page.succ_revision_id(revision_id)
render json: page.as_json(methods: [:title]).merge(body:, revision_id:, pred:, succ:)
end end
def render_wiki_conflict err def render_wiki_conflict err