# 无法删除主题 - 错误 500，rake 中止！

**URL:** https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407
**Category:** Support
**Created:** [2021年十一月29日 14:31 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407 "2021-11-29T14:31:48Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Blechpirat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blechpirat/32/221370_2.png) [@Blechpirat](https://meta.discourse.org/u/Blechpirat)
#### Post date: [2021年十一月29日 14:31 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/1 "2021-11-29T14:31:48Z")

</div>

我无法删除主题，想知道为什么。

使用论坛软件时，我收到一个 `500 内部服务器错误`

使用控制台：

```plaintext
$ cd /var/discourse/
$ sudo -s
# ./launcher enter app
# rake destroy:topics["Redaktion"]
即将删除 Redaktion 类别中的所有主题
Redaktion 类别中有 102 个主题需要删除
正在删除 kontaktliste...
rake 中断！
MessageBus::InvalidMessageTarget: MessageBus::InvalidMessageTarget
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.6/lib/message_bus.rb:373:in `publish'
/var/www/discourse/app/models/topic_tracking_state.rb:216:in `publish_delete'
/var/www/discourse/lib/post_destroyer.rb:195:in `perform_delete'
/var/www/discourse/lib/post_destroyer.rb:73:in `destroy'
/var/www/discourse/app/services/destroy_task.rb:25:in `block in destroy_topics'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:71:in `block (2 levels) in find_each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:71:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:71:in `block in find_each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:138:in `block in find_in_batches'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:245:in `block in in_batches'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:229:in `loop'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:229:in `in_batches'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:137:in `find_in_batches'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/relation/batches.rb:70:in `find_each'
/var/www/discourse/app/services/destroy_task.rb:19:in `destroy_topics'
/var/www/discourse/lib/tasks/destroy.rake:11:in `block in <main>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => destroy:topics
(运行任务时显示 --trace 以查看完整跟踪)

```

那么，我哪里做错了？

---

<div class="post-metadata">

### Author: ![Blechpirat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blechpirat/32/221370_2.png) [@Blechpirat](https://meta.discourse.org/u/Blechpirat)
#### Post date: [2021年十一月29日 15:00 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/2 "2021-11-29T15:00:52Z")

</div>

```plaintext
rails c
[1] pry(main)> Topic.find(84010).destroy

```

已删除该主题，但我仍然无法从浏览器中删除内容。

---

<div class="post-metadata">

### Author: ![Blechpirat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blechpirat/32/221370_2.png) [@Blechpirat](https://meta.discourse.org/u/Blechpirat)
#### Post date: [2021年十一月29日 19:38 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/6 "2021-11-29T19:38:04Z")

</div>

它在一台台式电脑上运行 Slack，就放在我旁边，所以没有提供商。

它包含一个相当大的 smf 导入。删除主题以前是有效的，但突然停止了。我正试图将导入重组为更适合 discourse 的结构——旧论坛的结构有很多深度。

---

<div class="post-metadata">

### Author: ![Blechpirat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blechpirat/32/221370_2.png) [@Blechpirat](https://meta.discourse.org/u/Blechpirat)
#### Post date: [2021年十一月30日 07:06 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/7 "2021-11-30T07:06:14Z")

</div>

我已经转储、擦除并重新导入了数据库。这让一切都快了一点，但问题仍然存在。

---

<div class="post-metadata">

### Author: ![fzngagan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/fzngagan/32/259349_2.png) [@fzngagan](https://meta.discourse.org/u/fzngagan)
#### Post date: [2021年十一月30日 07:43 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/8 "2021-11-30T07:43:46Z")

</div>

看看这个。您是否正尝试处理一个未附加任何组的受限类别？

> [@MessageBus::InvalidMessageTarget (MessageBus::InvalidMessageTarget)](https://meta.discourse.org/t/messagebus-invalidmessagetarget-messagebus-invalidmessagetarget/190199):
>
> When trying to create a new topic in a specific category, I get a 500 error. It seems to be specific to this category, since I can create a topic without problems in other categories. Investigating lead me to MessageBus::InvalidMessageTarget (MessageBus::InvalidMessageTarget) I tracked it down to lib/models/user\_action.rb (line 293). On line 265 of the same file is a todo: TODO there are conditions when this is called and user\_id was already rolled back and is invalid. I think this is wha…

---

<div class="post-metadata">

### Author: ![Blechpirat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blechpirat/32/221370_2.png) [@Blechpirat](https://meta.discourse.org/u/Blechpirat)
#### Post date: [2021年十一月30日 11:21 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/9 "2021-11-30T11:21:03Z")

</div>

> [@fzngagan](#):
>
> 看看这个。您是否正尝试处理一个未附加任何组的受限类别？

是的！

我刚刚尝试删除该论坛上的另一个主题，并且可以成功删除。这确实可能是从 SMF 导入时出现的问题，它以一种奇怪的方式附加了组。

感谢您的提示！

---

<div class="post-metadata">

### Author: ![Blechpirat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blechpirat/32/221370_2.png) [@Blechpirat](https://meta.discourse.org/u/Blechpirat)
#### Post date: [2021年十一月30日 11:38 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/10 "2021-11-30T11:38:55Z")

</div>

确实，将组添加到类别（以及所有子类别）确实有效。非常感谢。

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [2021年十二月30日 11:39 UTC](https://meta.discourse.org/t/cant-delete-topics-error-500-rake-aborted/210407/11 "2021-12-30T11:39:57Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
