Мне интересно, возможно ли это из-за контроля версий. Но мне было интересно, есть ли способ напрямую просмотреть код в файле .html.erb и отредактировать его, чтобы внести небольшое изменение в опечатку, без повторного развертывания всего приложения.
Я открыл консоль Heroku, набрал Dir.chdir "app/views/pages"
. Это приводит меня к нужной папке в каталоге.
√ _testApps/[app_name] % heroku console
irb(main):001:0> Dir.chdir "app/views/pages"
=> 0
Затем я могу сделать Dir.glob("*.erb")
, чтобы увидеть список всех файлов в этом каталоге с этим расширением.
irb(main):002:0> Dir.glob("*.erb")
=> ["sitemap.html.erb", "about.html.erb", "home.html.erb", "guide.html.erb",
"media_kit.html.erb", "social.html.erb", "terms_of_use.html.erb", "aids.html.erb",
"expectations.html.erb", "faq.html.erb", "privacy_policy.html.erb", "contact_us.html.erb"]
Теперь то, что я хочу сделать, похоже на то, что вы можете сделать в процессе разработки, чтобы изменить учетные данные nano rails credentials:edit
. Но выполнение nano rails home.html.erb:edit
или nano rails home:edit
не работает. Вот результат со всеми различными способами, которые я пробовал:
irb(main):003:0> nano rails home.html.erb:edit
Traceback (most recent call last):
1: from (irb):3
NameError (undefined local variable or method `home' for main:Object)
irb(main):004:0> nano rails home:edit
Traceback (most recent call last):
2: from (irb):3
1: from (irb):4:in `rescue in irb_binding'
NameError (undefined local variable or method `edit' for main:Object)
Did you mean? exit
irb(main):005:0> nano home:edit
Traceback (most recent call last):
2: from (irb):4
1: from (irb):5:in `rescue in irb_binding'
NameError (undefined local variable or method `edit' for main:Object)
Did you mean? exit
irb(main):006:0> home:edit
Traceback (most recent call last):
2: from (irb):5
1: from (irb):6:in `rescue in irb_binding'
NoMethodError (undefined method `home' for main:Object)
irb(main):007:0> home.html.erb:edit
Traceback (most recent call last):
2: from (irb):6
1: from (irb):7:in `rescue in irb_binding'
NameError (undefined local variable or method `home' for main:Object)
irb(main):008:0> edit home.html.erb
Traceback (most recent call last):
2: from (irb):7
1: from (irb):8:in `rescue in irb_binding'
NameError (undefined local variable or method `home' for main:Object)
irb(main):009:0> edit home
Traceback (most recent call last):
2: from (irb):8
1: from (irb):9:in `rescue in irb_binding'
NameError (undefined local variable or method `home' for main:Object)
irb(main):010:0> edit "home.html.erb"
Traceback (most recent call last):
2: from (irb):9
1: from (irb):10:in `rescue in irb_binding'
NoMethodError (undefined method `edit' for main:Object)
Did you mean? exit
Это вообще возможно? Или из-за контроля версий это не разрешено, и вам нужно сделать это локально, зафиксировать в git, а затем нажать git master, чтобы внести изменения? Интересно, потому что было бы неплохо сделать быстрое редактирование, не выполняя все эти другие шаги. И без необходимости делать страницу динамической и хранить информацию в таблице для редактирования в браузере.
Спасибо за ваши идеи.