DataTable nests `<form>` inside `<form>`
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 68/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- javascript, ruby
調査の方向性
DataTableForm、DataTableSearch、DataTablePerPageSelect、data_table_search_controller.js から始め、次に data_table/full_frame スナップショットとその他の data_table スナップショットを調べます。レンダリングされたフォームの構造と、requestSubmit() が送信先を選択する方法を確認します。2.0 テンプレートがフォームの入れ子を避け、data_table/* スナップショットが修正後の出力で再記録され、レビュー済みになれば完了です。
索引モデルが issue の本文から書いたものです。
説明
- Where:
DataTableFormwraps the table;DataTableSearchand
DataTablePerPageSelecteach render their own<form>inside it.
Snapshotdata_table/full_frameholds three<formelements. - Effect: nested forms are invalid HTML. The parser ignores the nested
search form's start tag — with its attributes and its
data-controller="ruby-ui--data-table-search"— and its end tag closes the
outer bulk form early, so the search controller never connects and the
per-page form that follows ends up outside the bulk form. The controller's
this.element.requestSubmit()therefore never runs at all. (The golden
snapshot keeps all three forms because the suite parses inside a
<template>, where the form-pointer rule does not apply.) - Fix: render the search and per-page forms outside the bulk form, or
make their controls reference it with theform=attribute; re-record (on the 2.0 line)
data_table/*. - 2.0 note: Herb's
NestingValidatorwill likely reject this at compile
time, so the DataTable migration ports the three forms as they are and then
restructures them — a template adjustment with a reviewed snapshot change,
on the 2.0 line, sincemainstays as is.
Surfaced by the golden HTML suite (PR #536), which pins what 1.6 renders today — this defect included. Per maintainer decision (2026-09-19) main stays as is: this is addressed on the 2.0 line, and the golden snapshot that pins it is re-recorded there with the diff reviewed.
Source: design/v2/follow-up-issues.md.
- 主要言語
- Ruby
- スター
- 1k
- フォーク
- 67
- 平均マージ
- 2日 19時間
- マージ済み PR(30日)
- 18
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ruby-ui/ruby_ui のほかの issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 55/100
-
bug
難易度 1/5 1〜3時間 初心者へのやさしさ 35/100
ruby-ui/ruby_ui の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
palladius/rails8-app-on-gcp#145 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
rubocop/rubocop-rspec#2236 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
riscv/riscv-unified-db#2624 · リアクション 1 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100