Skip to content

名前[姓]/名前[名]に半角・全角スペースが登録できてしまう件の修正 #4453

Open
otsuka-star wants to merge 3 commits into
baserproject:5.3.xfrom
otsuka-star:CU_ALL_TEST-16
Open

名前[姓]/名前[名]に半角・全角スペースが登録できてしまう件の修正 #4453
otsuka-star wants to merge 3 commits into
baserproject:5.3.xfrom
otsuka-star:CU_ALL_TEST-16

Conversation

@otsuka-star

@otsuka-star otsuka-star commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

@ryuring
以下の改修を行いましたので、レビューお願いします。

改修内容:

  • 名前に全角または半角スペースを入力して保存すると、「名前[姓]に半角・全角スペースは使用できません。」というバリデーションチェックが行われるようにする。

@otsuka-star otsuka-star changed the title CU_ALL_TEST-16 No.61 名前[姓]/名前[名]に半角・全角スペースが登録できてしまう件の修正 Jul 17, 2026
@ryuring

ryuring commented Jul 18, 2026

Copy link
Copy Markdown
Collaborator

@otsuka-star ユニットテストの調整をお願いします。わからなかったら、連絡ください。

@otsuka-star

Copy link
Copy Markdown
Contributor Author

@ryuring

ユニットテストに使用された/plugins/baser-core/tests/TestCase/Controller/UploadsControllerTest.phpのファイルを追ってみたのですが、以下のスクリーンショットようなダミー文字列の記述があるのですが、こちらにスペースが含まれているからテストの際におそらく失敗したと思われるのですが、ダミー文字列に含まれているスペース自体を消して調整をするという認識で合っておりますでしょうか?

スクリーンショット 2026-07-21 17 58 22

@ryuring

ryuring commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

@otsuka-star はい、合ってます

@teratai3

teratai3 commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

WordPressはユーザーデフォルトで性名フィールドがあると認識していますが、これはスペースを禁止にするバリデーションは入っていません。
これは、海外対応を考慮しているため、あえてバリデーションを実装していなさそうです。
海外だとElly De La Cruzみたいな名前の中にスペースが入るケースがあるためです。
basercmsも管理画面の多言語化を対応を行なっているため、難しいところではありますが、そこまで厳しいチェックが必要なのか議論の余地があります。
(ただし、ワードプレスの場合でも先頭・末尾の半角スペースを除去するなどは行なっているみたいです。)

test

->notEmptyString('real_name_1', __d('baser_core', '名前[姓]を入力してください。'));
->notEmptyString('real_name_1', __d('baser_core', '名前[姓]を入力してください。'))
->add('real_name_1', [
'noWhitespace' => [

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

カスタムでバリデーションルールを実装するより、regexで対応できるのではと考えていますがどうでしょうか?
コアでもregexが多用されている印象があり、複雑なロジックの場合だけカスタムでバリデーションルールが実装されている気がします。

3.8系みたいですが以下がまとまっています。
https://qiita.com/azukiazusa/items/9e8bbe461bdbc7ee572c

'rule' => function ($value) {
return !preg_match('/[  ]/u', $value);
},
'message' => __d('baser_core', '名前[姓]に半角・全角スペースは使用できません。')

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

名前[姓]に半角・全角スペースは使用できません。

上記はすでに多言語化、対応ファイルが追記されているのかと考えましたが、まだのようなので、以下ファイルに多言語化対応などを追記する必要がありそうです。

例:

  • plugins/baser-core/resources/locales/baser_core.pot
  • plugins/baser-core/resources/locales/en/baser_core.po

なお別prで対応いただく形であれば問題ないと思います。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants