Reputation:
I'm creating app in crystal-lang with kemal the web framework.
How can I use style.css
or Bootstrap files in the app template in kemal?
I also tried the full path but this did not work, too. No style will be loaded.
Here is my standard.ecr
(layout file)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title><%= title %> | Crystal Website</title>
<!-- Bootstrap -->
<link href="../public/css/bootstrap.css" rel="stylesheet">
<link href="/css/style.css" rel="stylesheet">
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<!-- Fixed navbar -->
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Crystal Website</a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<li
<% if env.request.path == "/" %>class="active"
<% end %>><a href="/">Home</a></li>
<li
<% if env.request.path == "/about" %>class="active"
<% end %>><a href="/about">About</a></li>
<li
<% if env.request.path == "/contact" %>class="active"
<% end %>><a href="/contact"> Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
<div class="container">
<%= content %>
</div>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="/js/bootstrap.js"></script>
</body>
</html>
Upvotes: 0
Views: 195
Reputation: 5157
By default your public folder should be in /public
path and not in /src/public
.
Here's the folder structure
- public
- css
- bootstrap.css
- src
- myapp.cr
- views
- layout
- standard.ecr
Upvotes: 1