이벤트 이름에 따옴표가 있으면 참석자가 삭제됩니다

Discourse Events 이벤트 이름에 이벤트 이름: 참가 "참석"으로 참여와 같이 따옴표를 넣으면

저장 시 PUT /posts/123에 500 오류가 발생하며(아마도 깨진 마크다운 때문일 것입니다) 문제는 이벤트의 모든 참석자가 지워지는 것처럼 보인다는 점입니다.

참고: 이 문제는 https://meta.discourse.org/t/discourse-livestream/341335와 함께 사용되었지만, 관련이 없다고 생각합니다.

3개의 좋아요

아니, 이번 주 중에 한번 확인해볼게요.

500 오류가 발생하고 있다고 하셨는데, /logs를 확인해서 거기서 보시는 내용을 알려주실 수 있을까요?

1개의 좋아요

제가 생각하기에, 이스케이프되지 않은 따옴표가 이벤트 마크업을 깨뜨려서 이벤트가 감지되지 않고 이벤트가 파기되는 것 같습니다. 그 후 따옴표를 제거하고 다시 저장 버튼을 누르면 새로운 이벤트가 생성됩니다.

직렬화过程中 발생한 500 에러는 아마도 관련 있는 부수 효과일 것입니다.

NoMethodError (undefined method `end_of_day' for nil)
plugins/discourse-calendar/app/models/discourse_post_event/event.rb:93:in `expired?'
plugins/discourse-calendar/app/models/discourse_post_event/event.rb:279:in `can_user_update_attendance'
plugins/discourse-calendar/app/serializers/discourse_post_event/event_serializer.rb:93:in `can_update_attendance'
(eval at /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/active_model_serializers-0.8.4/lib/active_model/serializer.rb:467):4:in `_fast_attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:468:in `rescue in attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:455:in `attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:480:in `_serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:359:in `serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:347:in `as_json'
activesupport (7.2.2.1) lib/active_support/json/encoding.rb:23:in `encode'
activesupport (7.2.2.1) lib/active_support/json/encoding.rb:23:in `encode'
activesupport (7.2.2.1) lib/active_support/core_ext/object/json.rb:42:in `to_json'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:331:in `to_json'
multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'
multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'
multi_json (1.15.0) lib/multi_json/adapter.rb:25:in `dump'
multi_json (1.15.0) lib/multi_json.rb:139:in `dump'
app/controllers/application_controller.rb:506:in `render_json_dump'
app/controllers/posts_controller.rb:301:in `update'
2개의 좋아요

@dsims님, 보고해 주셔서 감사합니다. 이 PR이 병합되면 수정될 예정입니다.

‘최고의’ 수정 방식은 아니지만, 사용자가 이벤트 모달의 필드 중 하나에 "을 입력하더라도 이벤트가 깨지지 않도록 했습니다.

1개의 좋아요

이 주제는 마지막 답변 후 7일이 지나면 자동으로 닫힙니다. 더 이상 새 답변을 작성할 수 없습니다.