我使用的是 2.9.0.beta14 版本,并通过 app.yml 中的 DISCOURSE_CAN_PERMANENTLY_DELETE 启用了永久删除。
该选项出现在帖子的论坛上,如果我点击它,会弹出一个模态框要求我确认,然后当我点击确定时,什么也没有发生。
在 devtools 的网络选项卡中查看,没有任何请求。在控制台中查看,没有额外的错误或日志。
帖子没有被删除,仍然保留在那里。
我使用的是 2.9.0.beta14 版本,并通过 app.yml 中的 DISCOURSE_CAN_PERMANENTLY_DELETE 启用了永久删除。
该选项出现在帖子的论坛上,如果我点击它,会弹出一个模态框要求我确认,然后当我点击确定时,什么也没有发生。
在 devtools 的网络选项卡中查看,没有任何请求。在控制台中查看,没有额外的错误或日志。
帖子没有被删除,仍然保留在那里。
在 3.0.0 beta 15 更新后,它仍然无法正常工作。有什么我可以做的来提供日志等信息吗?谢谢。
您好 @Soenneker ![]()
抱歉回复晚了。我刚刚启用了该设置,并在我的测试站点上进行了试运行以进行检查,我也看到了类似的行为,但前提是我在尝试执行永久删除之前没有刷新页面。
我的分步操作:
但是,如果我刷新页面,它就能按预期工作:
这听起来熟悉吗,或者我可以尝试其他方法来重现您看到的情况吗?
您好 @JammyDodger
感谢您的回复。
我看到了您提到的问题,这与我目前看到的功能一致。
有几点补充观察:
如果在软删除页面后 5 分钟刷新,然后永久删除帖子,该主题仍然不会被删除。我会看到您看到的模态框,然后点击“确定”。对于原始帖子以外的帖子,这可以正常工作。
但是,如果我转到 /latest?status=deleted,它仍然会出现在主题列表中。主题显示“回复 -1”,如果我点击这些主题,我会看到“
发生错误”页面。
我曾收到一个 500 错误,这看起来可能是因为主题仍在删除中,而我尝试在删除过程中再次删除它:
查看错误日志,我看到如下内容:
NoMethodError (undefined method `topic_id' for nil:NilClass)
lib/post_destroyer.rb:60:in `destroy'
app/controllers/topics_controller.rb:643:in `destroy'
app/controllers/application_controller.rb:413:in `block in with_resolved_locale'
app/controllers/application_controller.rb:413:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:368:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:209:in `call'
太好了。我认为这正是我需要用于重现问题的信息。
![]()
我再次尝试了,但使用了一个只包含 OP 的主题:
?status=deleted 中,但访问时会显示“错误。发生了一些问题”屏幕,并在控制台中显示此消息:TypeError: p is undefined
setupController topic-from-params.js:68
setup Ember
s router_js.js:1514
routeEnteredOrUpdated router_js.js:1524
setupContexts router_js.js:1470
finalizeTransition router_js.js:1378
promise router_js.js:1321
b rsvp.js:435
g rsvp.js:421
invoke queue.ts:203
flush queue.ts:98
flush deferred-action-queues.ts:75
_end index.ts:616
end index.ts:298
_run index.ts:667
run index.ts:339
d Ember
success ajax.js:101
jQuery 6
y ajax.js:150
E rsvp.js:460
E rsvp.js:916
fajax.js:163
loadTopicView topic.js:24
getAndRemove preload-store.js:28
E rsvp.js:460
E rsvp.js:916
getAndRemove preload-store.js:27
loadTopicView topic.js:24
refresh post-stream.js:264
model topic-from-params.js:25
deserialize Ember
getModel router_js.js:775
resolve router_js.js:616
b rsvp.js:435
g rsvp.js:421
invoke queue.ts:203
flush queue.ts:98
flush deferred-action-queues.ts:75
_end index.ts:616
_boundAutorunEnd index.ts:257
promise callback*n/
platform.ts:28
flush Ember
_scheduleAutorun index.ts:803
_ensureInstance index.ts:791
schedule index.ts:384
Ember
v rsvp.js:492
resolve router_js.js:934
y router_js.js:249
getTransitionByIntent router_js.js:1305
transitionByIntent router_js.js:1247
doTransition router_js.js:1366
transitionTo router_js.js:1776
Ember 2
handleURL url.js:366
routeTo url.js:211
w topic-list-item.js:31
click topic-list-item.js:187
Ember 5
application.js:83
让我们看看是否能解决这个问题。
![]()
几天前,我合并了一些与永久删除相关的修复程序。我认为现在一切都应该按预期工作了。
感谢您的错误报告!
此主题已自动关闭,3 天后无人回复。新回复已不允许。