-
Notifications
You must be signed in to change notification settings - Fork 131
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix #3249 カスタムコンテンツ:フィールド バリデーション不具合 #3309
Conversation
レビューをお願いします。 |
@@ -132,11 +132,19 @@ | |||
</ul> | |||
</div> | |||
|
|||
<?php | |||
$emailConfirmClass = 'bca-textbox__input'; | |||
if (!empty($this->BcAdminForm->error('meta'))) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@HungDV2022 この判定だと、email_confirm 以外の meta でエラーが出た時にまずそうですよね。
# Conflicts: # plugins/baser-core/src/Model/Validation/BcValidation.php
# Conflicts: # plugins/baser-core/src/Model/Validation/BcValidation.php
@@ -132,11 +132,20 @@ | |||
</ul> | |||
</div> | |||
|
|||
<?php | |||
$metaErrors = $entity->getError('meta'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ryuring 別方法を判断しました。いかがでしょうか。
@HungDV2022 こちらの件ですが、エラー情報が特殊であるので、エラー直後に、エラー情報を正しい状態に戻すという方針でいきたいと思います。 エラー直後のタイミングということで、CustomFieldTable に、afterMarshal メソッドを追加して対応しましょう。 public function afterMarshal(EventInterface $event, EntityInterface $entity, ArrayObject $data, ArrayObject $options)
{
$metaErrors = $entity->getError('meta');
if (isset($metaErrors['checkAlphaNumericWithJson'])) {
$entity->setError('meta.BcCustomContent.email_confirm', ['checkAlphaNumericWithJson' => $metaErrors['checkAlphaNumericWithJson']]);
}
} |
@ryuring 勉強になりました。ありがとうございました。レビューをお願いします。 |
@HungDV2022 ありがとうございます、マージします! |
No description provided.