# 批量用户邀请出现错误

**URL:** https://meta.discourse.org/t/bulk-user-invite-with-error/131507
**Category:** Support
**Created:** [2019年十月20日 21:09 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507 "2019-10-20T21:09:26Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月20日 21:09 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/1 "2019-10-20T21:09:26Z")

</div>

我发送了批量邀请，但收到了这条消息。

 ![10%20PM](https://global.discourse-cdn.com/meta/original/3X/f/c/fcfa66528ce4e997365075c10cc7c9f03b079604.png)

除了这条消息外，我没有看到任何邮件已发送的迹象，日志和管理员界面中也没有任何相关记录。甚至我的邮件服务提供商也没有显示发送邮件数量的激增。

是否有可能消息中的“已发送邮件数”部分并不准确？

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月20日 21:42 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/2 "2019-10-20T21:42:42Z")

</div>

我发现了我的错误。我在 CSV 文件中保留了列名。

我不想骚扰我的用户。是否可以安全地假设，尽管显示了 **已发送 840 封邀请邮件** 的消息，但批量邮件实际上并未发送？

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2019年十月20日 21:52 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/3 "2019-10-20T21:52:08Z")

</div>

我猜它们应该都已发送，错误仅出现在第一行的列名上。也许 @techAPJ 可以确认一下。

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月20日 23:30 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/4 "2019-10-20T23:30:38Z")

</div>

我在 /admin/email/sent 中没有看到任何看起来像批量发送的邮件记录。是否可能在其他地方有我遗漏的日志条目？

另外，可能值得一提的是，我原本期望会出现一个类似于发送单个邀请时的对话框，但实际上并没有。这是正常行为吗？

---

<div class="post-metadata">

### Author: ![techAPJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/techapj/32/342990_2.png) [@techAPJ](https://meta.discourse.org/u/techAPJ)
#### Post date: [2019年十月21日 15:23 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/5 "2019-10-21T15:23:54Z")

</div>

如果您的网站邮件发送功能正常，我可以保证所有 840 封邀请邮件均已发出。如果您想再次确认，不妨联系其中一位被邀请的用户核实一下？

> [@tisawyer](#):
>
> 我在 /admin/email/sent 中没有看到任何类似批量发送的邮件记录。

您在 `/admin/email/sent` 中是否看到任何最近的邮件发送记录？能否尝试从 `/admin/email` 发送一封测试邮件，看看是否会生成日志记录？（应该会生成。）

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月21日 20:18 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/6 "2019-10-21T20:18:42Z")

</div>

> [@techAPJ](#):
>
> 您在 `/admin/email/sent` 中看到任何最近的已发送邮件条目吗？能否尝试从 `/admin/email` 发送测试邮件，并查看是否生成了日志条目？（应该会生成。）

发送给自己测试邮件功能正常，并且会出现在 `/admin/email/sent` 中，许多最近的邮件也是如此。

 ![27%20PM](https://global.discourse-cdn.com/meta/original/3X/a/2/a2f5a58914a6ceecb334db38ce201d0d07f8e9b3.png)

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月21日 21:13 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/7 "2019-10-21T21:13:24Z")

</div>

还有一个想法。这些电子邮件地址是从我们的 Mailman 邮件列表导入的预置用户。批量邀请功能会向预置用户发送电子邮件吗？

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [2019年十月21日 22:19 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/8 "2019-10-21T22:19:43Z")

</div>

> [@tisawyer](#):
>
> 这些电子邮件地址是从我们的 Mailman 列表中导入的暂存用户。批量邀请是否会向暂存用户发送邮件？

我刚刚在我的网站上用暂存用户的电子邮件地址测试了批量邀请 CSV 文件。Discourse 返回的响应是：

> 您的批量用户邀请文件已处理，已发送 1 封邀请邮件。

但实际上并没有发送任何邀请。我不确定邀请暂存用户的预期行为是什么，但 Discourse 代码中的问题似乎出现在这里：[discourse/app/jobs/regular/bulk\_invite.rb at main · discourse/discourse · GitHub](https://github.com/discourse/discourse/blob/master/app/jobs/regular/bulk_invite.rb#L96%E3%80%82%60User.find_by_email(%3C%E6%9A%82%E5%AD%98%E7%94%A8%E6%88%B7%E9%82%AE%E7%AE%B1%3E)%60) 会返回一个用户，因此邀请不会被发送。

如果暂存用户不能被邀请到论坛，那么发送的通知就不应声称已为这些用户发送了邀请。

编辑：无法批量邀请暂存用户似乎是一个回归问题。向暂存用户发送单独邀请可以正常工作，没有任何问题。

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2019年十月22日 00:32 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/9 "2019-10-22T00:32:29Z")

</div>

这个需要修复吗 @techAPJ？

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [2019年十月22日 01:35 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/11 "2019-10-22T01:35:48Z")

</div>

你的出站邮件服务器是什么？Mailgun 和 Mandrill 为通过它们发送的邮件提供了非常便捷的洞察功能。你可以查看每一封邮件。

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月27日 13:44 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/12 "2019-10-27T13:44:32Z")

</div>

大家好，@codinghorror @techAPJ，对此有什么更新吗？

---

<div class="post-metadata">

### Author: ![techAPJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/techapj/32/342990_2.png) [@techAPJ](https://meta.discourse.org/u/techAPJ)
#### Post date: [2019年十月30日 04:55 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/13 "2019-10-30T04:55:39Z")

</div>

> [@simon](#):
>
> 无法批量邀请已暂存的用户似乎是一个回归问题。

我会在今天修复这个问题。

---

<div class="post-metadata">

### Author: ![techAPJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/techapj/32/342990_2.png) [@techAPJ](https://meta.discourse.org/u/techAPJ)
#### Post date: [2019年十月30日 06:15 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/14 "2019-10-30T06:15:39Z")

</div>

已通过以下方式完成

> <https://github.com/discourse/discourse/commit/2ae71b7a87b91b0ec3e729ac0778f58fcdf9c49e>

@tisawyer 将您的实例更新至最新版本后，即可向暂存用户发送批量邀请。

（我将该提交标记为功能更新，因为批量邀请最初并不打算用于暂存用户。我们已在[此提交](https://github.com/discourse/discourse/commit/dde0fcc658ae639d71b36f098269b996c367058f)中开始允许向暂存用户发送邀请，现在也允许通过批量邀请实现此功能。）

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十月31日 12:59 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/15 "2019-10-31T12:59:40Z")

</div>

我今晚升级，测试后再反馈。谢谢！

---

<div class="post-metadata">

### Author: ![tisawyer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tisawyer/32/127435_2.png) [@tisawyer](https://meta.discourse.org/u/tisawyer)
#### Post date: [2019年十一月1日 05:12 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/16 "2019-11-01T05:12:40Z")

</div>

看起来效果不错。作为测试，已向一个用户的列表发送了批量邀请。在完成更多测试并对发送的邮件进行一些调整后，将发送正式邀请。

非常感谢两位。

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2019年十一月1日 08:23 UTC](https://meta.discourse.org/t/bulk-user-invite-with-error/131507/17 "2019-11-01T08:23:19Z")

</div>


