Rails 5.2 无法使用 Sublime Text 打开 Rails 凭据
Posted
技术标签:
【中文标题】Rails 5.2 无法使用 Sublime Text 打开 Rails 凭据【英文标题】:Rails 5.2 Can't open rails credentials with Sublime Text 【发布时间】:2018-12-04 12:21:23 【问题描述】:我正在使用带有 Rails 5.2 和 Sublime Text 3 的 Linux 的 Windows 子系统。 当我这样做时
EDITOR="subl --wait" rails 凭据:编辑
它显示“新凭据已加密并保存”。但不会打开要使用 Sublime Text 3 编辑的文件。 同样在使用
尝试 Visual Studio Code 时EDITOR="code --wait" rails credentials:edit
Visual Studio Code 会打开,但它是空的。
我只能用 vim 和命令编辑文件 EDITOR="vim" rails 凭据:编辑
问题是我不想用 vim 编辑文件。 是什么问题导致它无法打开要使用 Sublime 或 VS Code 编辑的文件?
我正在使用 Rails 5.2
提前非常感谢
【问题讨论】:
【参考方案1】:在 macOS 上,您将运行此命令来编辑 Sublime 中的凭据。完成后,在 Sublime 中保存并关闭文件:
EDITOR="/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl -w" bin/rails credentials:edit
【讨论】:
【参考方案2】:我在 Windows 7x64 上,今天早上偶然发现了这个问题。通过将 atom 添加到我的系统变量 Path(所以 cmd & powershell & bash 都知道它)并将 powershell 添加到我的环境中来解决它。我使用单独的环境用于红宝石和导轨。
所以现在当我在 cmd 中输入 set EDITOR=atom --wait && rails credentials:edit
或
第一个$env:EDITOR="atom --wait"
,第二个rails credentials:edit
在powershell中或
EDITOR="atom --wait" rails credentials:edit
在 bash 中,
我得到了想要的结果,即打开凭据并编辑它们 :).. 希望这会有所帮助
附言。将编辑器设置为 subl 或记事本时,我不需要使用 --wait
标志!
EDITOR
只是当前会话的一个临时变量,意味着当前打开的 cmd、powershell 或 bash 窗口!
【讨论】:
【参考方案3】:默认情况下,Sublime Text Editor 未配置为直接从命令行运行。您正在尝试将 EDITOR 变量设置为“subl --wait”,但命令行不知道“subl”是什么!试试这篇文章,它详细介绍了在命令行上设置“subl”别名来启动 sublime,然后再试一次!
Open Sublime Text from Terminal in macOS
编辑:注意到您使用的是 Ubuntu 而不是 MacOS,但只要您使用的是 bash(这是 Ubuntu 上的默认 shell),该帖子应该仍然有效。
【讨论】:
我确实在终端中配置了 subl 命令,所以当我输入 subl 时,它会打开 Sublime Text 3。Atom、记事本、写字板也会发生与 sublime 相同的事情 注意到您的 VS 代码示例中有一个错字,您需要在code
和 --wait
之间留一个空格,而不是普通的 sublime 用户,但我确实让它像这样与 Atom 一起使用:@987654324 @
我复制了代码——等待错误。我正在使用代码运行它--wait。当我尝试使用 Atom 运行它时,我得到与 VS Code(空文件)相同的行为
是否可以从终端打开Atom/Code,即atom .
或code .
打开当前目录?
是的,我可以从终端打开 Atom/Code 到当前目录。【参考方案4】:
我已经成功了
SET EDITOR="full_path to sublime"
rails credentials:edit
只有在关闭 sublime 后,我才得到新的凭据保存响应。
希望对你有帮助
【讨论】:
以上是关于Rails 5.2 无法使用 Sublime Text 打开 Rails 凭据的主要内容,如果未能解决你的问题,请参考以下文章
Rails:无法将图像解析为 URL:to_model 委托给附件,但附件为零 Rails 5.2
在 Postgresql 中使用 UUID 的 Rails 5.2 活动存储