Ruby on rails Secrets.yml未加载到rails中

Ruby on rails Secrets.yml未加载到rails中,ruby-on-rails,environment-variables,ruby-on-rails-5,Ruby On Rails,Environment Variables,Ruby On Rails 5,我的本地secrets.yml中有一些数据。现在我又增加了两个秘密, 但在rails控制台中,这些秘密不会出现。 即使我在secrets.yml中编辑旧密钥,然后再次打开控制台,但仍然无法查看更新的数据。 这意味着secrets.yml未正确加载 我试图执行bin/spring stop,但没有成功 是因为,secrets.yml在gitignore吗 我还尝试从应用程序中删除secrets.yml。然后再次打开rails控制台。 我仍然可以看到老秘密。 我在netbeans编辑器中手动更改了s

我的本地
secrets.yml
中有一些数据。现在我又增加了两个秘密, 但在rails控制台中,这些秘密不会出现。 即使我在secrets.yml中编辑旧密钥,然后再次打开控制台,但仍然无法查看更新的数据。 这意味着secrets.yml未正确加载

我试图执行
bin/spring stop
,但没有成功

是因为,secrets.yml在gitignore吗

我还尝试从应用程序中删除secrets.yml。然后再次打开rails控制台。 我仍然可以看到老秘密。 我在netbeans编辑器中手动更改了secrets.yml

我已经执行了
Rails.application.secrets.api\u key
我能看见。然后使用netbeans,我又添加了1个密钥,即
secret\u密钥
,但我无法在rails控制台中使用
rails.application.secrets.secret\u密钥

我重新打开了航站楼好几次,但运气不好


我的Rails版本是Rails 5.1之后的5.1.4

,您无法手动更新secrets.yml。您需要首先对其进行解密、编辑,然后再次加密。最安全的方法是在控制台中遵循这些命令

首先,您需要在控制台中运行此命令。我不确定netbeans是否可以使用它,所以我将为vim编辑器编写手册,每个控制台都可以处理

EDITOR="vim" bin/rails secrets:edit
在这里,您需要非常小心,因为大多数开发人员都很难使用vim编辑器

  • 按i键

  • 做些改变

  • 按退出按钮

  • 然后按“:”按钮并键入wq(看起来应该是这样的:wq),然后按enter键

  • 您将在控制台中看到这样一条消息:加密并保存了
    文件。
  • 您可以再次键入
    EDITOR=“vim”bin/rails secrets:edit
    来检查secrets.yml,以确保所有内容都已正确更新

  • 我刚刚重新启动计算机,再次打开终端,它就工作了。
    奇怪的是,我不明白这个问题,但它是有效的

    你在使用哪个编辑器?你是如何编辑你的秘密的?你能提供更多细节来回答这个问题吗,比如添加你在终端上执行的命令?你是否手动编辑了secrets.yml?正确的方法是在终端中运行此命令:
    rails-credentials:edit
    并在那里进行更改。如果在rails控制台中仍然看不到它,请尝试一个新的终端窗口,然后重新运行
    rails c
    。一般需要更多的细节-正如Semih在上面指出的那样。@MikeK:Rails凭证不是Rails 5.1的一部分,而是Rails的一部分6@SemihArslanoğlu更新了问题的细节扫描您提供的机密样本。yml?我可以在早些时候编辑机密文件,因此无需进行上述操作