2015-07-30 3 views
2

У меня есть локальное приложение, которое я нажимаю на герою, а несколько часов назад оно перестало работать.Прохождение таблиц стилей к герою

Heroku прекратил распознавать бутстрап, и оба моего локального хоста и герою перестали распознавать мой файл css. Меня действительно смущает то, что 3 часа назад как героику, так и моему местному хозяину работали отлично.

Я откатил свой код в последний раз, когда знал, что это сработало, но файл application.css по-прежнему не был подтвержден, даже когда я знал, что это тот же самый код!

Я ничего не нашел в сети или каких-либо ответов на поддержку heroku ни одной из моих проблем, поэтому любая помощь будет принята с благодарностью.

Все мои HTML-файла (часть Heroku только не признает):

<!DOCTYPE html> 
<html> 
<head><br><br> 
    <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    <title>Appv013</title> 
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> 
    <link rel="stylesheet" href="application.css"> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> 
</head> 
<body> 

<nav class="navbar navbar-inverse navbar-fixed-top "> 
    <div class="container-fluid"> 
    <div class="navbar-header"> 
    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar"> 
    <span class="icon-bar"></span> 
    <span class="icon-bar"></span> 
    <span class="icon-bar"></span>       
    </button> 
    <%= link_to 'Home', root_path, class: 'navbar-brand' %> 
</div> 
<div class="collapse navbar-collapse" id="myNavbar"> 
    <ul class="nav navbar-nav"> 
    <li class="active"><a href="#">Home</a></li> 
    <li class="dropdown"> 
     <li><a href="#">Page 1</a></li> 
     <!-- NOTES!!! REPLACE ABOVE LINE AND 
     USE BELOW FOR DROP DOWN THING 

     <a class="dropdown-toggle" data-toggle="dropdown" href="#">Page 1 <span class="caret"></span></a> 
     <ul class="dropdown-menu"> 
     <li><a href="#">Page 1-1</a></li> 
     <li><a href="#">Page 1-2</a></li> 
     <li><a href="#">Page 1-3</a></li> 
     </ul> --> 
    </li> 
    <li><a href="#">Page 2</a></li> 
    <li><a href="#">Page 3</a></li> 
    </ul> 

    </ul> 
</div> 

<%= yield %> 
test 0.13.97 
</body> 
</html> 

И весь мой CSS appliation.css файл (часть ни не признающего):

body{ 
    margin-right: 10px; 
    margin-left: 10px; 
    background-color: #eee; 
} 
.navbar-inverse { 
    background-color: #000000; 
    border-color: #BFFFEA; 
} 

Редактировать: Я использую герою для git, а ниже - выход из t erminal, когда я запустил локальный сервер

Started GET "/" for ::1 at 2015-08-04 15:26:39 -0400 
Processing by VisitorsController#index as HTML 
    (1.0ms) SELECT COUNT(*) FROM "users" 
Rendered visitors/index.html.erb within layouts/application (2.1ms) 
Completed 200 OK in 7ms (Views: 5.6ms | ActiveRecord: 1.0ms 
Started GET "/application.css" for ::1 at 2015-08-04 15:26:39 -0400 
ActionController::RoutingError (No route matches [GET] "/application.css"): 
actionpack (4.2.3) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call' 
web-console (2.2.1) lib/web_console/middleware.rb:39:in `call' 
actionpack (4.2.3) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' 
railties (4.2.3) lib/rails/rack/logger.rb:38:in `call_app' 
railties (4.2.3) lib/rails/rack/logger.rb:20:in `block in call' 
activesupport (4.2.3) lib/active_support/tagged_logging.rb:68:in `block in tagged' 
activesupport (4.2.3) lib/active_support/tagged_logging.rb:26:in `tagged' 
activesupport (4.2.3) lib/active_support/tagged_logging.rb:68:in `tagged' 
railties (4.2.3) lib/rails/rack/logger.rb:20:in `call' 
quiet_assets (1.1.0) lib/quiet_assets.rb:27:in `call_with_quiet_assets' 
actionpack (4.2.3) lib/action_dispatch/middleware/request_id.rb:21:in `call' 
rack (1.6.4) lib/rack/methodoverride.rb:22:in `call' 
rack (1.6.4) lib/rack/runtime.rb:18:in `call' 
activesupport (4.2.3) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' 
rack (1.6.4) lib/rack/lock.rb:17:in `call' 
actionpack (4.2.3) lib/action_dispatch/middleware/static.rb:116:in `call' 
rack (1.6.4) lib/rack/sendfile.rb:113:in `call' 
railties (4.2.3) lib/rails/engine.rb:518:in `call' 
railties (4.2.3) lib/rails/application.rb:165:in `call' 
rack (1.6.4) lib/rack/lock.rb:17:in `call' 
rack (1.6.4) lib/rack/content_length.rb:15:in `call' 
rack (1.6.4) lib/rack/handler/webrick.rb:88:in `service' 
/Users/Anna/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/webrick/httpserver.rb:138:in `service' 
/Users/Anna/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/webrick/httpserver.rb:94:in `run' 
/Users/Anna/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/webrick/server.rb:294:in `block in start_thread' 
+0

Что показывает консоль разработчика, когда вы загружаете свою страницу локально и на герою? В chrome или firefox этот ярлык обычно имеет ctrl + shift + i или ctrl + shift + c. В частности, сеть должна показать вам, будут ли ресурсы видны, а на консоли будет отображаться ошибка загрузки (если таковая имеется). – bwarren2

+0

сеть показывает загрузочный лоток для локального хоста и унаследованные значения webkit для heroku (по умолчанию im im sure) – Anna

+0

Я не уверен, что вы подразумеваете под «не распознаванием». На вкладке сети инструментальных средств dev есть запросы на получение таблиц стилей 200 OK? Есть ли ошибки в консоли? – bwarren2

ответ

1

Похоже, что URI в ваш файл CSS разорван.

Если вы могли бы включить всю HTML-страницу, которую вы пытаетесь выполнить, а инструменты dev, выводимые для запросов css, было бы легче отладить, что происходит.

Я подозреваю, что это либо путь к вашему application.css неверен, либо ваш веб-сервер не настроен на обслуживание статических файлов из любого файла css или обоих.

Вы используете систему контроля версий (например, git)? Если да, у вас есть фиксация для рабочей версии этой страницы, и вы можете увидеть разницу с git diff?

Приносим извинения, если это кажется супер вытянутым, отладка удаленно сложна. Хотя мы это получим!

EDIT:

На основании вывода терминала вы публикуемую, что журнал с локального веб-сервера запущенной, запрос GET для application.css не удается.

Started GET "/application.css" for ::1 at 2015-08-04 15:26:39 -0400 
ActionController::RoutingError (No route matches [GET] "/application.css"): 

К сожалению, Ruby не является моей областью, но я могу попытаться дать общий совет.

Проблема, с которой вы сталкиваетесь, называется сервисом статических файлов (это хорошая еда Google для решения вашей проблемы), и в зависимости от конфигурации вашего приложения решение будет отличаться. Один ответ стоит here, и, возможно, this поможет. В принципе, есть папка, содержащая ваш файл css (который, как я предполагаю, называется «общедоступным»), и вам нужно выставлять файлы в этом каталоге, чтобы ваш веб-сервер предлагал их по URL-адресам, которые вы добавляете в свои html-файлы.Вы можете использовать вывод терминала локально, чтобы узнать подробности об ошибке, или когда вещи будут перенесены на герою, вы можете использовать инструменты chrome dev для получения подробной информации о запросе/ответе. Вам нужны эти запросы для вашего статического, чтобы вернуть код ответа 200, 304 или какой-нибудь другой «вот некоторые данные».

Вам не понадобится этот трюк, пока вы не исправили локальную ошибку, но один полезный инструмент при отладке в процессе производства на heroku - heroku run bash. Это позволит вам запустить SSH на то, что вы развернули на heroku, что полезно, когда вам нужно диагностировать что-то там отсутствует (например).

В целом, кажется, что вы только начинаете в прекрасном мире веб-разработки. Это действительно хорошо, потому что webdev супер весело! Мой личный soapbox, однако, заключается в том, что Ruby - не самый дружелюбный стартовый язык; у него много запеченных «магии», и он не слишком упрям, что вы делаете «правильный путь». В отличие от этого, когда я учился, я нашел Python + Django прекрасной комбинацией; Python (+ Django) позволяет легко делать все правильно и заставляет вас работать, чтобы делать что-то не так, так что легче оставаться на ходу. Это также помогает Django иметь потрясающую документацию. YMMV, но это совет, который имеет значение для меня, когда я был там, где вы есть.

+0

Спасибо вам за вашу помощь! Я добавил весь HTML-файл, и я не был уверен, что из него вышло, и из того, что я нашел в Интернете, я думаю, что я разместил правильный вывод, но дайте мне знать, если я разместил неправильную вещь – Anna

Смежные вопросы