所以,各位,我有一个论坛,在这个论坛上,我既是唯一的管理员也是所有者!原来,当我创建这个网站时,我使用了一个名为 REDACTED 的电子邮件地址,这个电子邮件地址是通过 TMD hosting 的 cpanel 创建的。后来我不再使用 tmd hosting 的服务,转而使用了 digital ocean,我甚至忘记了我的管理员电子邮件是这个,我没有更改它!结果,现在我想把论坛的管理权交给我的另一个账户,但论坛要求我输入我的 REDACTED 账户并确认我要将管理权交给另一个账户,但我已经无法访问 tmd hosting 的 cpanel 来访问 REDACTED 了,我该怎么办?
[image]
3 个赞
我联系了 TMD 托管,被告知我的电子邮件 REDACTED 已不存在,并且只有通过购买新服务器才能激活它,但我的论坛管理员怎么办?您是否会永远被困在这个电子邮件 REDACTED 中?即使我有自己论坛上所有内容的密码,也无法更改它吗?
2 个赞
感谢您的回答,但现在又出现了一个问题,即使按照一些教程操作也找不到!我该如何查看用户 ID?
[image]
2 个赞
那个指南中有一个方法可以使用你的用户名来完成,这也许会更容易?
2 个赞
root@ForumPandex:/var/discourse# u = User.find_by_username("dex")
-bash: syntax error near unexpected token `('
root@ForumPandex:/var/discourse#
我使用了这个命令,但是出现了这个错误,怎么修复?
1 个赞
您需要更严格地遵循指南。您遗漏了进入容器 然后访问 Rails 控制台 的步骤,之后才能运行后续命令。
不过,我也建议在深入研究之前先备份您的站点。指南中的分步说明确实让操作更简单,但如果您不熟悉 Rails 控制台,则可能会发生意外。您不希望在没有最新备份的情况下弄乱任何东西。
1 个赞
我已经调整了帖子中的语言。希望现在更清楚了。
如果这仍然不清楚,我会退一步,考虑在 Marketplace 中寻求帮助。
我正在使用谷歌翻译,我无法理解您所说的内容,也许是翻译错误或超出了谷歌的上下文!
但我无法理解的是,我正在一步一步地正确操作,我不知道为什么会出现这个:
-bash: 语法错误,意外标记 (
什么是市场?
1 个赞
我重启了电脑,错误就消失了!但现在又出现了一个错误,在输入电子邮件的步骤中,u.email = \"REDACTED\" 看起来是这样的
无效的标记字母(按回车键)
1 个赞
在输入电子邮件的步骤中,u.email = "REDACTED" 看起来像这样:
无效标记字母(按回车键)
我该如何修复?
2 个赞
pfaffman
(Jay Pfaffman)
2022 年9 月 3 日 00:22
13
我不明白你的描述哪里有问题。请确保电子邮件地址后面没有多余的空格。但我建议创建一个新的管理员用户,使用
rake admin:create
然后移除你想更新地址的用户的管理员和版主权限。之后,你可以再次将该用户设为管理员。
3 个赞
我应该把它放在哪个步骤之前?总之,现在它显示出来了
root@ForumPandex:~# cd /var/discourse
root@ForumPandex:/var/discourse# ./launcher enter app
x86_64 arch detected.
WARNING: containers/app.yml file is world-readable. You can secure this file by running: chmod o-rwx containers/app.yml
root@ForumPandex-app:/var/www/discourse#
1 个赞
root@ForumPandex:~# cd /var/discourse
root@ForumPandex:/var/discourse# ./launcher enter app
检测到 x86_64 架构。
警告:containers/app.yml 文件是可被所有人读取的。您可以通过运行以下命令来保护此文件:chmod o-rwx containers/app.yml
root@ForumPandex-app:/var/www/discourse# rails c
[1] pry(main)> u = User.find_by_username "=dex="
=> nil
[2] pry(main)> e.email = "EMAIL"
NameError: undefined local variable or method `e' for main:Object
from (pry):2:in `__pry__'
[3] pry(main)> u.email = "EMAIL"
NoMethodError: undefined method `email=' for nil:NilClass
from (pry):3:in `__pry__'
[4] pry(main)> u.email_tokens.create(email: u.email)
NoMethodError: undefined method `email_tokens' for nil:NilClass
from (pry):4:in `__pry__'
[5] pry(main)> u.save!
NoMethodError: undefined method `save!' for nil:NilClass
from (pry):5:in `__pry__'
[6] pry(main)>
1 个赞
我已将您的帖子移至此处,以便将有关该问题的所有信息集中在一个地方,方便大家查找和帮助您。
另外请注意,您在求助时应考虑不要透露您的管理员电子邮件地址。我们的一位社区专家正在乐于助人地为您编辑帖子,但如果您不包含它会更容易。
您似乎已经找到了进入 rails 控制台的方法。 但看起来您在输入用户名时包含了占位符 = 符号。您应该在不带它们的情况下输入用户名。
不过,@pfaffman 建议了一种替代方法,以防此方法太棘手:
如果您创建第二个管理员,就可以从您想更改电子邮件地址的帐户中删除管理员权限,并解除需要旧电子邮件地址进行电子邮件确认的安全限制。然后,您可以使用新管理员更改原始帐户的电子邮件,然后再重新授予管理员权限。
您可以在 Create an admin account from the console 中找到有关创建管理员 rake 任务的更多信息。
1 个赞
pfaffman
(Jay Pfaffman)
2022 年9 月 3 日 09:59
17
您没有在包含代码的主题的空白字段中输入用户名,因此用户名应该是占位符文本。\n\n u = User.find_by_username "=dex="\n\n应该是。\n\n u = User.find_by_username "dex"\n\n\n如果 dex 是用户名。它返回 nil 而不是用户记录的事实表明您没有用户记录。由于您不了解这些基本知识,我强烈建议如前所述创建一个新用户。这将使您能够使用更熟悉的工具。
2 个赞
否则它只会给我带来麻烦,所以我做了这个来创建一个新的管理员,它奏效了,有了新的管理员,我删除了旧的管理员,谢谢你的一切!
[image]
3 个赞
system
(system)
关闭
2022 年10 月 3 日 16:30
20
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.