2017-02-01 11 views
2

Я пытался найти ответ на пару дней, но ничего не нашел. Я знаю, что есть много подобных вопросов, но они не могут мне помочь.Маршруты отсутствуют после перезапуска терминала. Rails 5.0.1

Я начал изучать Rails с использованием http://guides.rubyonrails.org/getting_started.html и продвигается вперед до перезагрузки терминала. Вот сообщения об ошибках и примеры кода:

[email protected]:~/blog$ rails routes 
/home/walker/.rvm/gems/ruby-2.3.1/gems/railties-5.0.1/lib/rails/app_loader.rb:40: 
warning: Insecure world writable dir 
/home/walker/.rvm/gems/[email protected]/bin in PATH, mode 040777 
config.eager_load is set to nil. Please update your config/environments/*.rb files accordingly: 

    * development - set it to false 
    * test - set it to false (unless you use a tool that preloads your test environment) 
    * production - set it to true 

You don't have any routes defined! 

Please add some routes in config/routes.rb. 

For more information about routes, see the Rails guide: http://guides.rubyonrails.org/routing.html. 

routes.rb:

Rails.application.routes.draw do 
    root 'welcome#index' 
    resources :articles 
end 

конфигурации/среда/development.rb:

config.eager_load = false 

Config/сред /test.rb:

config.eager_load = false 

конфигурации/среда/production.rb

config.eager_load = true 

Запуск сервера:

[email protected]:~/blog$ rails s 
/home/walker/.rvm/gems/ruby-2.3.1/gems/railties-5.0.1/lib/rails/app_loader.rb:40: 
warning: Insecure world writable dir /home/walker/.rvm/gems/[email protected]/bin in PATH, mode 040777 
=> Booting Puma 
=> Rails 5.0.1 application starting in development on http://localhost:3000 
=> Run `rails server -h` for more startup options 
config.eager_load is set to nil. Please update your config/environments/*.rb files accordingly: 

    * development - set it to false 
    * test - set it to false (unless you use a tool that preloads your test environment) 
    * production - set it to true 

Puma starting in single mode... 
* Version 3.7.0 (ruby 2.3.1-p112), codename: Snowy Sagebrush 
* Min threads: 5, max threads: 5 
* Environment: development 
* Listening on tcp://0.0.0.0:3000 
Use Ctrl-C to stop 

Localhost сообщение об ошибке отображения:

Страница, которую вы искали Безразлично не существует.

Возможно, вы ошибались, адрес или страница, возможно, были перемещены.

Консольный вывод:

Started GET "/" for 127.0.0.1 at 2017-02-01 16:59:46 +0200 Started GET 
"/" for 127.0.0.1 at 2017-02-01 16:59:46 +0200 

ActionController::RoutingError (No route matches [GET] "/"): 

ActionController::RoutingError (No route matches [GET] "/"): 

actionpack (5.0.1) lib/action_dispatch/middleware/debug_exceptions.rb:53:in `call' 
web-console (3.4.0) lib/web_console/middleware.rb:135:in `call_app' 
web-console (3.4.0) lib/web_console/middleware.rb:28:in `block in call' 
web-console (3.4.0) lib/web_console/middleware.rb:18:in `catch' 
web-console (3.4.0) lib/web_console/middleware.rb:18:in `call' 
actionpack (5.0.1) lib/action_dispatch/middleware/show_exceptions.rb:31:in `call' 
railties (5.0.1) lib/rails/rack/logger.rb:36:in `call_app' 
railties (5.0.1) lib/rails/rack/logger.rb:24:in `block in call' 
activesupport (5.0.1) lib/active_support/tagged_logging.rb:69:in `block in tagged' 
activesupport (5.0.1) lib/active_support/tagged_logging.rb:26:in `tagged' 
activesupport (5.0.1) lib/active_support/tagged_logging.rb:69:in `tagged' 
railties (5.0.1) lib/rails/rack/logger.rb:24:in `call' 
actionpack (5.0.1) lib/action_dispatch/middleware/request_id.rb:24:in `call' 
rack (2.0.1) lib/rack/method_override.rb:22:in `call' 
rack (2.0.1) lib/rack/runtime.rb:22:in `call' 
activesupport (5.0.1) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' 
actionpack (5.0.1) lib/action_dispatch/middleware/executor.rb:12:in `call' 
actionpack (5.0.1) lib/action_dispatch/middleware/static.rb:136:in `call' 
rack (2.0.1) lib/rack/sendfile.rb:111:in `call' 
railties (5.0.1) lib/rails/engine.rb:522:in `call' 
puma (3.7.0) lib/puma/configuration.rb:226:in `call' 
puma (3.7.0) lib/puma/server.rb:578:in `handle_request' 
puma (3.7.0) lib/puma/server.rb:415:in `process_client' 
puma (3.7.0) lib/puma/server.rb:275:in `block in run' 
puma (3.7.0) lib/puma/thread_pool.rb:120:in `block in spawn_thread' 

Что вы предложить, чтобы исправить это?

Примечание: Весь этот материал хорошо работал до перезапуска терминала.

P.S. Я создал другое приложение, и он отлично работает до перезапуска терминала.

P.P.S. Я запускаю подсистему Linux на Windows 10 Pro.

P.P.P.S. Я не могу использовать любой дистрибутив Linux или купить MacBook

+0

На основании первой части, как ваши права доступа к файлам для маршрутов.rb? – lcguida

+0

@Icguida хороший вопрос! Я запускаю ls -la, но нет путей route.rb в консоли. Кстати, я могу найти route.rb через Sublime или Explorer. Разрешения для файлов в папку конфигурации: 0777 –

ответ

0

Благодаря @lcguida на вопрос, что заставило меня задуматься о другом пути, чтобы найти решение.

Я, наконец, нашел причину этой проблемы. Если кто-то застрял в такой проблеме, проверьте это link, а также this link

0

Для меня, кажется, что система имеет проблемы с правами доступа к вашей домашней папке.

Попробуйте запустить sudo chmod go-w /home/walker и если проблема возникает на других путях делать то же самое.

Проверить аналогичный question. Если вы хотите попробовать Rails без «инфраструктурных» проблем, ознакомьтесь с https://www.railstutorial.org/ и их опцией с cloud9.

+0

Я уже пробовал все методы с изменением разрешений в папке/home ранее, эта проблема сохраняется. Btw, это сообщение _warning_, поскольку система Windows имеет доступ к этой папке. И я думаю, что это небезопасно, но не критично. –