2016-11-28 41 views
1

我試圖鏈接一些寫入到單頁應用程序的CSS ive,但是當我通過CMDER運行它時,它一直給我一個404錯誤。將CSS鏈接到燒瓶時出錯

我的應用

webapp.py

靜態文件夾

--index.html

--css --- theme.css

--images --- hudson1。 JPG

模板

--newyork.html

127.0.0.1 - - [28/Nov/2016 10:08:10] "GET /%7B%7B%20url_for('static',%20filename='css/theme.css')%20%7D%7D HTTP/1.1" 404 

這是我的錯誤。 這是我的代碼。

的Index.html

<!DOCTYPE html> 
<html> 
<head> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script> 
$(document).ready(function(){ 
$("#newyorkbutton").click(function(){ 
$.get("/newyork", function(data, status){ 
$("#city").html(data); 
}); 
}); 
}); 
</script> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>A Blog ABout My Travels</title> 
<link rel= "stylesheet" type= "text/css" href= "{{ url_for('static', filename='css/theme.css') }}"> 
</head> 

<body> 

    <div id="mainPicture"> 
     <div class="picture"> 
      <div id="headerTitle">Places I've Been</div> 
      <div id="headerSubtext">A Blog About My Travels</div> 
     </div> 
    </div> 
    <div id="page"> 
     <input type="submit" name="NewYork" id="newyorkbutton" value="New York"> 
</div> 
<div id="city" class="contentBox"> 
     <div class="innerBox"> 
      <h2>Welcome to My Travels</h2> 
      <div class="contentText"><p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum..</p><br /> 
     <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum..</p></div>   
</div> 
</div> 

</body> 
</html> 

這是我newyork.html:

<!doctype html> 
<head> 
<title>New York</title> 
<link rel="stylesheet" href="{{ url_for('static', filename='css/theme.css') }}"> 
</head> 
<div class="innerBox"> 
<h2>New York</h2>  
<div class="contentText"><p> 
    New York is a state in the northeastern United States, and is the 27th-most extensive, fourth-most populous, and seventh-most densely populated U.S. state. New York is bordered by New Jersey and Pennsylvania to the south and Connecticut, Massachusetts, and Vermont to the east. The state has a maritime border in the Atlantic Ocean with Rhode Island, east of Long Island, as well as an international border with the Canadian provinces of Quebec to the north and Ontario to the west and north. 
</p> 
<img src="{{ url_for('static', filename='images/newyork1.jpg') }}" alt="New York" style="width:750px;height:350px;"> 
<p> 
    The state of New York, with an estimated 19.8 million residents in 2015, is often referred to as New York State to distinguish it from New York City, the state's most populous city and its economic hub. With an estimated population of 8.55 million in 2015, New York City is the most populous city in the United States and the premier gateway for legal immigration to the United States. The New York City Metropolitan Area is one of the most populous urban agglomerations in the world. New York City is a global city, exerting a significant impact upon commerce, finance, media, art, fashion, research, technology, education, and entertainment, its fast pace defining the term New York minute. 
</p></div> 
</div> 

而且我webapp.py:

from flask import Flask, render_template, request 

app = Flask(__name__) 

@app.route("/") 
def root(): 
    return app.send_static_file('index.html') 

@app.route("/newyork") 
def newyork(): 
    return render_template('newyork.html') 

if __name__ == "__main__":  
    app.run() 
+0

將'href'命名爲''css/theme.css''它可能工作。 –

回答

2

的問題是,您發送的index.html作爲一個靜態文件,而不是一個渲染模板。 首先移動index.htmlstatic文件夾templates文件夾,

然後, 你應該改變webapp.py

@app.route("/") 
def root(): 
    return app.send_static_file('index.html') 

@app.route("/") 
def root(): 
    return render_template('index.html') 

,它會工作。

+0

非常完美,非常感謝 – Dylan

+0

@Dylan然後請選擇此答案爲接受:) – noteness