Руководство по Rails - CSS и изображение не включены
-
11-12-2019 - |
Вопрос
Я новичок в Ruby on Rails и следую руководствам по Rails Майкла Хартла.
Согласно книге, я скачал набор CSS и поместил его в папку /public/stylesheets/.Кроме того, я поместил файл logo.png в папку public/images.Когда я запрашиваю страницу из браузера, логотип не отображается, а вместо него отображается текст Alt.Кроме того, я думаю, что CSS тоже не связан.
Казалось, я сделал именно то, что было написано в книге.Не уверен, в чем проблема.
Rails 3.2.8, ruby 1.9.3p194 (2012-04-20 редакция 35410) [x86_64-linux]
Вот макет страницы application.html.erb:
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<%= csrf_meta_tag %>
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<%= stylesheet_link_tag 'blueprint/screen', :media => 'screen' %>
<%= stylesheet_link_tag 'blueprint/print', :media => 'print' %>
<!--[if lt IE 8]><%= stylesheet_link_tag 'blueprint/ie' %><![endif]-->
<%= stylesheet_link_tag 'custom', :media => 'screen' %>
</head>
<body>
<div class="container">
<header>
<%= image_tag("logo.png", :alt=>"Sample App", :class => "round") %>
<nav class="round">
<ul>
<li><%= link_to "Home", '#' %></li>
<li><%= link_to "Help", '#' %></li>
<li><%= link_to "Sign in", '#' %></li>
</ul>
</nav>
</header>
<section class="round">
<%= yield %>
</section>
</body>
</html>
Решение
В Rails 3.X есть таблицы стилей в app/assets/stylesheets
, и изображения в app/assets/images
.
Другой совет тоже хорош...используйте последнюю версию руководства и ознакомьтесь с rvm.
Другие советы
Почему вы следуете за старым изданием учебника?На его сайте слегка новая версия.Вы обязательно должны проверить это.
Вы используете Rails 3?Если вы, правильное место, чтобы поставить свои стилы теперь в активах.Вы можете найти их в приложении / активах / стилях.