From 0862c5572b25fbb9791f7c2832940ae4fad8b29b Mon Sep 17 00:00:00 2001 From: king Date: Fri, 14 Aug 2026 17:24:42 +0900 Subject: [PATCH] =?UTF-8?q?fix(cafe24):=20=EC=98=88=EC=95=BD=20=EC=8B=9C?= =?UTF-8?q?=EA=B0=81=EC=9D=84=20datetime-local=20=EB=8C=80=EC=8B=A0=20?= =?UTF-8?q?=EB=82=A0=EC=A7=9C+=EC=8B=9C=EA=B0=84=20=EB=B3=84=EB=8F=84=20?= =?UTF-8?q?=EC=9E=85=EB=A0=A5=EC=9C=BC=EB=A1=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit datetime-local 단일 입력은 한국어 로캘에서 "2026. 08. 14. 오후 07:00" 형태로 렌더링되는데 브라우저·로캘마다 표시 폭이 달라 잘리는 사고가 있었다(실제 발생, 직전 커밋에서 칸 폭을 넓혀 임시로 막았지만 근본 원인은 남아 있었다). type=date + type=time 두 개의 별도 input 으로 바꿨다. 각각 폭이 고정이라 잘릴 여지가 없다. 제출 직전 JS 가 두 값을 "YYYY-MM-DD" + "T" + "HH:MM" 로 합쳐 hidden scheduled_at 에 넣는다 — 이 형식은 예전 datetime-local 이 만들던 값과 동일해서 서버(store.parse_schedule_at)는 손대지 않았다. date/time 두 입력에 required 를 둬서, 브라우저의 기본 폼 검증이 빈 값 제출을 막는다(hidden 필드는 타입 특성상 required 검증 대상이 아니라 시각 입력 쪽에 걸었다). 검증: 유닛테스트 61개 통과(백엔드 무변경이라 영향 없음). 브라우저 실측 — 두 입력 각 170px 로 내부 잘림 없음(scrollWidth==clientWidth), 가로 스크롤 없음, 실제 제출 이벤트를 발생시켜 2026-08-20 19:30 입력이 hidden 필드에 "2026-08-20T19:30" 으로 정확히 합쳐지는 것을 확인. Co-Authored-By: Claude Opus 5 --- .../cafe24/templates/cafe24/_editor.html | 11 ++++++++++- .../cafe24/templates/cafe24/products.html | 10 +++++++++- .../cafe24/templates/cafe24/schedules.html | 2 +- app/modules/cafe24/templates/cafe24/system.html | 2 +- app/static/cafe24.css | 17 ++++++++++++++--- docs/CAFE24_MODULE.md | 8 +++++++- 6 files changed, 42 insertions(+), 8 deletions(-) diff --git a/app/modules/cafe24/templates/cafe24/_editor.html b/app/modules/cafe24/templates/cafe24/_editor.html index f5543ff..840bc1e 100644 --- a/app/modules/cafe24/templates/cafe24/_editor.html +++ b/app/modules/cafe24/templates/cafe24/_editor.html @@ -87,10 +87,19 @@ + {# datetime-local 은 로캘·브라우저마다 표시 폭이 달라 잘리는 사고가 있었다(실제 + 발생). 날짜/시간을 별도 input 으로 나누면 각각 폭이 고정이라 잘릴 일이 없다. + 제출 직전 JS 가 두 값을 합쳐 hidden scheduled_at 에 넣는다 — 서버(store. + parse_schedule_at)는 예전과 같은 'YYYY-MM-DDTHH:MM' 형식을 그대로 받으므로 + 백엔드는 변경하지 않았다. #} +