13

Kupiłem motyw bootstrap Twitter od wrapbootstrap. Mam już aplikację szyny funkcjonalnej. Teraz chcę zaprojektować moją aplikację poprzez zintegrowanie motywu bootstrap z moją aplikacją. Jestem na to nowy i nie mam pojęcia, jak to zrobić. Po przeprowadzeniu wielu badań na ten temat, znalazłem tylko kilka dyskusji dotyczących tego problemu. Na przykład znalazłem ten wpis: Implementing WrapBootstrap theme into Rails AppJak zintegrować motyw Wrap Bootstrap z aplikacją Rails?

Ale nie jestem całkowicie pewien, w jaki sposób zasoby z tematu zostaną zastosowane do mojego wniosku. Skopiowałem wszystkie zasoby z folderów mojego projektu: app/assets/images, app/assets/javascripts i app/assets/stylesheets z odpowiednich folderów kompozycji. Następnie dostałem kilka błędów, gdy próbowałem uruchomić aplikację lokalnie. Usunąłem plik application.css, po czym zaczął działać. Ale nie widzę jeszcze żadnego wzoru z tematu, który jest jeszcze zastosowany. Co powinienem zrobić, aby ten motyw zadziałał w mojej aplikacji rails?

Odpowiedz

22

Najpierw sprawdź to screencast:

http://railscasts.com/episodes/328-twitter-bootstrap-basics

następnie dodam bootstrap gem jak bootstrap-Sass, następnie dodać pliki JS przez gem dodając je do oczywistego, coś takiego:

//= require jquery 
//= require jquery_ujs 
//= require bootstrap 
//= require_tree . 

następnie chciałbym uzyskać pliki css, które kupili od wrapboostrap i umieścić je w tobie folderu aktywa/arkuszy stylów, a następnie dodać necesary znaczników i clases do aplikacji to jak ive zrobić to wcześniej.

nadzieję, że pomoże

EDIT:

Markup:

Sprawdź szablon został pobrany, zacznijmy z paska nawigacyjnego na przykład

kod z szablonu:

<header> 
    <div class="navbar navbar-fixed-top"> 
     <div class="navbar-inner"> 
      <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> 
       <span class="icon-bar"></span> 
       <span class="icon-bar"></span> 
       <span class="icon-bar"></span> 
      </a> 
      <div class="container"> 
       <a class="brand" href="index.html">Gaia Business</a> 
       <div class="nav-collapse"> 
        <ul class="nav"> 
         <li class="active"><a href="index.html">Home</a></li> 
         <li><a href="about.html">About</a></li> 
         <li><a href="service.html">Service</a></li> 
         <li><a href="faq.html">FAQ</a></li> 
         <li><a href="contact.html">Contact</a></li> 
         <li class="dropdown"> 
          <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> 
          <ul id="dropdown-menu" class="dropdown-menu"> 
          <li><a href="#">Dropdown 1</a></li> 
          <li><a href="#">Dropdown 2</a></li> 
          <li><a href="#">Dropdown 3</a></li> 
          <li class="divider"></li> 
          <li class="nav-header">Nav header</li> 
          <li><a href="#">Dropdown 4</a></li> 
          <li><a href="#">Dropdown 5</a></li> 
          </ul> 
         </li> 
        </ul> 
       </div><!-- /.nav-collapse --> 
      </div><!--/.container--> 
     </div><!-- /navbar-inner --> 
    </div> 
</header><!--/header--> 

Teraz musisz umieścić się w swojej aplikacji, jeśli navbar pokazuje w każdym widoku w aplikacji, należy wspomnieć o tym na układach/application.html.erb coś takiego:

<!DOCTYPE html> 
<html> 
<head> 
    <title>Golden Green Chlorella</title> 
    <%= stylesheet_link_tag "application", :media => "all" %> 
    <%= javascript_include_tag "application" %> 
    <%= csrf_meta_tags %> 

</head> 
<body> 

<%= render :partial => 'layouts/navbar' %> 
<%= yield %> 
</body> 
</html> 

i wreszcie zrobić navbar częściowy

_navbar.html.erb:

<header> 
    <div class="navbar navbar-fixed-top"> 
     <div class="navbar-inner"> 
      <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> 
       <span class="icon-bar glyph"></span> 
       <span class="icon-bar glyph"></span> 
       <span class="icon-bar glyph"></span> 
      </a> 
      <div class="container"> 
       <%= link_to "Your app", root_path, :class => "brand" %> 
       <div class="nav-collapse"> 
        <ul class="nav"> 
         <li class=<%= current_page?(static_index_path) || current_page?(root_path) ? "active" : "" %> > <%= link_to (t "navbar.home"), root_path%></li> 
         <li class=<%= current_page?(static_know_path) ? "active" : "" %>> <%= link_to (t "navbar.know"), static_know_path%></li> 
         <li class=<%= current_page?(static_buy_path) ? "active" : "" %>> <%= link_to (t "navbar.buy"), static_buy_path%></li>      
         <li class=<%= current_page?(static_faq_path) ? "active" : "" %>> <%= link_to "FAQ", static_faq_path%></li>   
         <li class=<%= current_page?(static_contact_path) ? "active" : "" %>> <%= link_to (t "navbar.contact"), static_contact_path%></li> 

         <!-- <li class="active"><a href="index.html">Home</a></li> --> 
        </ul> 
        <ul class="nav pull-right"> 
         <li><%= link_to "English", static_english_path%></li> 
         <li><%= link_to "Español", static_spanish_path%></li> 
        </ul> 
       </div><!-- /.nav-collapse --> 
      </div><!--/.container--> 
     </div><!-- /navbar-inner --> 
    </div> 
</header><!--/header--> 

To był tylko na pasku nawigacyjnym, teraz trzeba zrobić resztę, dodawanie znaczników szablon pokazuje Ci zrobić, całą swoją aplikację, to nie jest to łatwe zadanie, ale to jak jej dokonać.

+0

mam zrobić wszystkie rzeczy, z wyjątkiem ostatniego wiersza: „następnie dodać necesary znaczników i clases do aplikacji” czy mógłbyś rozwinąć to nieco? –

+0

zrobione, edytowałem mój answerert –

+0

wielkie dzięki za odpowiedź. Po prostu, czy muszę to zrobić po skopiowaniu wszystkich zasobów z tematu do mojej aplikacji/zasobu? –

7

upewnić się, że podczas instalacji twitter bootstrap należy dodać następujące gem do swojej Gemfile pod „grupa: aktywa”

gem 'therubyracer' 
gem 'less-rails' 
gem 'twitter-bootstrap-rails' 

następnie uruchomić komendę paczkę.

Teraz motyw "nazwa_pliku.css”(nazwa_pliku może być dowolny), który u pobraniu wystarczy dodać go do«stylów»folder pod app-> assests-> stylów

następnie otworzyć plik application.css w tym samym folderze, tam można zobaczyć

*= require_tree. 

zastąpić tę linię

*= require "file_name.css" 

UWAGA: nie zapomnij, aby ponownie skompilować swoje aktywa lub po prostu usunąć zawartość folderu tmp/cache

zapisać go i R. Zrestartuj swój serwer. zastosuje twój nowy motyw.

Powiązane problemy