スキャン結果フォームの保存が機能しない(action未指定でスキャンURLへPOSTされる) #14

Closed
opened 2026-09-27 10:43:09 +00:00 by joe · 1 comment
Owner

現象

/estimates/scan・/expenses/scan でOCR→フォーム初期値表示後、「保存」を押してもレコードが作成されず一覧に現れない。

原因

expenses/form.html・estimates/form.html の <form method="post"> に action 属性がなく、スキャン画面経由でレンダリングされた場合、現在URL(/.../scan)へPOSTされる。scanのPOSTハンドラは画像必須のため「画像を選択してください」でリダイレクトし、保存が行われない。

修正

フォームに明示的なactionを付ける: 新規/スキャン初期値 → /new、編集 → /edit。
regression test: スキャン結果HTMLに action="/estimates/new" が含まれること等。

## 現象 `/estimates/scan`・`/expenses/scan` でOCR→フォーム初期値表示後、「保存」を押してもレコードが作成されず一覧に現れない。 ## 原因 `expenses/form.html`・`estimates/form.html` の `<form method="post">` に `action` 属性がなく、スキャン画面経由でレンダリングされた場合、現在URL(`/.../scan`)へPOSTされる。scanのPOSTハンドラは画像必須のため「画像を選択してください」でリダイレクトし、保存が行われない。 ## 修正 フォームに明示的なactionを付ける: 新規/スキャン初期値 → `/new`、編集 → `/edit`。 regression test: スキャン結果HTMLに `action="/estimates/new"` が含まれること等。
Author
Owner

修正しました。mainにマージ済み(コミット 7b004e2 以降)。

原因

スキャン結果のフォームに action 属性がなく、/estimates/scan・/expenses/scan 自身へPOSTされていました。scanハンドラは画像必須なので保存されずにリダイレクトされていたものです。

修正

フォームに明示的なactionを付与(新規/スキャン結果 → /new、編集 → /edit)。回帰テスト2件追加、全60件パス。

※ このバグで先ほどのスキャン内容は保存されていないので、お手数ですが再度スキャン→保存をお願いします。

修正しました。`main`にマージ済み(コミット 7b004e2 以降)。 ## 原因 スキャン結果のフォームに `action` 属性がなく、`/estimates/scan`・`/expenses/scan` 自身へPOSTされていました。scanハンドラは画像必須なので保存されずにリダイレクトされていたものです。 ## 修正 フォームに明示的なactionを付与(新規/スキャン結果 → `/new`、編集 → `/edit`)。回帰テスト2件追加、全60件パス。 ※ このバグで先ほどのスキャン内容は保存されていないので、お手数ですが再度スキャン→保存をお願いします。
joe closed this issue 2026-09-27 10:44:06 +00:00
Sign in to join this conversation.
No labels
bug
cleanup
enhancement
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
joe/sougi#14
No description provided.