プロジェクト

全般

プロフィール

Bug(バグ) #1602

コミュニティカテゴリを空欄で追加できてしまう

Itsuro Tajima13年以上前に追加. 8年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
-
対象バージョン:
開始日:
2010-09-21
期日:
進捗率:

100%

3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Unknown (未調査)

説明

コミュニティカテゴリ設定
/pc_backend.php/community/categoryList
で、「大カテゴリ」「小カテゴリ」の入力フォームでカテゴリ名に何も入力せずに「追加」をクリックすると、
カテゴリ名のないカテゴリが追加されてしまう。

ピクチャ_9.png 表示 (60.9 KB) Itsuro Tajima, 2010-09-21 17:54


関連するチケット

関連している OpenPNE 3 - Backport(バックポート) #1625: コミュニティカテゴリを空欄で追加できてしまう Fixed(完了) 2010-09-21

関係しているリビジョン

リビジョン d869769b (差分)
Masato Nagasawa13年以上前に追加

fixed deleted "default" parameter in the community_category table (refs #1602)

リビジョン 2f4eb182 (差分)
Masato Nagasawa13年以上前に追加

added migration file. (fixes #1602)

リビジョン f75a37d6 (差分)
Masato Nagasawa13年以上前に追加

added migration file.(again) (fixes #1602)

リビジョン 1f96ae05 (差分)
Masato Nagasawa13年以上前に追加

Revert "added migration file.(again) (fixes #1602)"

This reverts commit f75a37d6f947e8aecb2bcf8433a52191a9b1c06d.

リビジョン 50d24897 (差分)
Masato Nagasawa13年以上前に追加

Revert "added migration file. (fixes #1602)"

This reverts commit 2f4eb182ecd04fb9460ddb582b6bd97d4ede9164.

リビジョン 91194b3e (差分)
Masato Nagasawa13年以上前に追加

Revert "fixed deleted "default" parameter in the community_category table (refs #1602)"

This reverts commit d869769b41f462fae23d4d70ff983dfa2dbdd021.

リビジョン 2340f105 (差分)
Masato Nagasawa13年以上前に追加

fixed modified to require input of name in the community category form. (fixes #1602)

リビジョン bb98bf99 (差分)
Masato Nagasawa13年以上前に追加

fixed to trim use the opValidatorString (refs #1602)

リビジョン 4097c1b4 (差分)
Masato Nagasawa13年以上前に追加

fixed trim option and useless processing of a 'unset()' (refs #1602)

リビジョン b147fa25 (差分)
Masato Nagasawa13年以上前に追加

fixed 'required' message (fixes #1602)

履歴

#1 Masato Nagasawa13年以上前に更新

  • 担当者Masato Nagasawa にセット

#2 Masato Nagasawa13年以上前に更新

  • ステータスNew(新規) から Accepted(着手) に変更

#3 Masato Nagasawa13年以上前に更新

アプリ側で空欄を許可しない修正で対応しようと思いましたが、
そもそもschema.ymlで以下のように「default: ""」としてデフォルト値が空欄となっていることが原因であると思います。

name: { type: string(64), default: "", notnull: true, comment: "Category name" }

よって、3.7では「default: ""」を削除し、DB変更を行えない3.6ではアプリ側で許可しないように修正します。

#4 Masato Nagasawa13年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 f75a37d6f947e8aecb2bcf8433a52191a9b1c06d で適用されました。

#5 Masato Nagasawa13年以上前に更新

更新履歴 2f4eb182ecd04fb9460ddb582b6bd97d4ede9164 で適用されました。

#6 Masato Nagasawa13年以上前に更新

  • ステータスPending Review(レビュー待ち) から Accepted(着手) に変更

マイグレーションの処理に問題が見つかったため戻します。

#7 Masato Nagasawa13年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更

更新履歴 2340f1059a5f33b912d53aac5e7f8b8137629161 で適用されました。

#8 Masato Nagasawa13年以上前に更新

更新履歴 50d24897b32cb711093344bbaf1c3914fefb645a で適用されました。

#9 Masato Nagasawa13年以上前に更新

更新履歴 1f96ae05c6f6a3c66410dfabe1636663f8e0574d で適用されました。

#10 Masato Nagasawa13年以上前に更新

「default: ""」が指定されていた場合にDB側に変更があるものと思い込んでいましたが、
DB側は指定しない場合と一切変更がなく、生成されるform側で空欄を許可しないようになるだけでした。
そのため、一度すべての変更を変更(3コミット)を戻し、3.6で適応したform側を修正する変更を取り込む方向で修正しました。

#11 Shogo Kawahara13年以上前に更新

  • ステータスPending Review(レビュー待ち) から Rejected(差し戻し) に変更
  • コミュニティカテゴリは opStringValidator により、文頭・文末の全角/全角スペースを除去するべきでしょう。

#12 Masato Nagasawa13年以上前に更新

更新履歴 bb98bf99b8a2bb43c75cec3b0f07b2dff6a97550 で適用されました。

#13 Masato Nagasawa13年以上前に更新

  • ステータスRejected(差し戻し) から Accepted(着手) に変更

#14 Masato Nagasawa13年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更

#15 Shogo Kawahara13年以上前に更新

  • ステータスPending Review(レビュー待ち) から Rejected(差し戻し) に変更

些細な問題ですが、

$this->setValidator('name', new opValidatorString(array('max_length' => 64, 'ltrim' => true, 'rtrim' => true)));

のオプションで、 ltrim, rtrim を指定していますが、
trim を true にするだけで良いはずです。

#16 Shogo Kawahara13年以上前に更新

さらに、 CommunityCategoryForm::configure() で 2箇所で unset() しているのが不可解です。

#17 Masato Nagasawa13年以上前に更新

  • ステータスRejected(差し戻し) から Accepted(着手) に変更

#18 Masato Nagasawa13年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更

更新履歴 4097c1b4788e9101f9b81e4ec29dd464be3c1351 で適用されました。

#19 Shogo Kawahara13年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#20 Masato Nagasawa13年以上前に更新

  • ステータスPending Testing(テスト待ち) から Pending Review(レビュー待ち) に変更
  • 進捗率70 から 50 に変更

更新履歴 b147fa2571bebcf016a241b2b03c8aba665e2ed9 で適用されました。

#21 Naoya Tozuka12年以上前に更新

  • 担当者 を削除 (Masato Nagasawa)

修正箇所( 2340f1059 bb98bf99 4097c1b4 b147fa25 )確認しました。

一点気になる点がありますので、他の方にも意見を求めるべく一旦留保します。

メモ

b147fa25 (fixed 'required' message) について、

適用前:

  • 既存のカテゴリ名を空欄にして「編集」 → ページ上部に赤い字で「name [Required.]」
  • 新規カテゴリ名を空欄で「追加」 → カテゴリ名フィールドの真上に赤い字で「必須項目です。」

適用後:

  • 既存のカテゴリ名を空欄にして「編集」 → ページ上部に赤い字で「必須項目です。」
  • 新規カテゴリ名を空欄で「追加」 → カテゴリ名フィールドの真上に赤い字で「必須項目です。」

のようにメッセージがflash表示されるようになりますが、必須項目なのがカテゴリ名であるという情報が欠落してしまうのは不親切ではないでしょうか。

#22 Yuya Watanabe約12年前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更
  • 3.6 で発生するかYes から Unknown (未調査) に変更
  • 3.4 で発生するかUnknown (未調査) にセット

レビューしました.

本チケットの主題である「コミュニティカテゴリを空欄で追加できてしまう」という問題の修正については問題ないと思います.ただし, note-21 で上げられているような修正はこのチケットとは関係ない部分と言えるため,本来ならば別チケットで対応が正しいと思います.note-21 の問題は安定版である OpenPNE 3.6 にも含まれている状態のため別のバグとして扱うのが妥当であると思い,本チケットについてはレビューOKとしてステータスを「Pending Testing」に変更します.

#23 Shouta Kashiwagi約12年前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

テストOKです。

#24 kaoru n8年以上前に更新

  • 3.8 で発生するかUnknown (未調査) にセット

他の形式にエクスポート: Atom PDF