Что я хочу сделать, это просто отправить вниз HTML + CSS + JS файлы как статические страницы на некоторых маршрутах, такие как:сервировка HTML + CSS + JS (угловой) с колбой
@app.route('/', methods=[GET])
def index():
return <html+css+js>
Особенно я хотел бы держаться подальше от шаблонов и полагаться на ajax/websocket, подключаясь к другим маршрутам флеш-приложения, чтобы получить объекты JSON и обновить веб-страницу. Также мне было трудно связать css и js-файлы в html. Метод url_for
, похоже, полностью полагается на систему шаблонов и, похоже, не работает должным образом в моем случае.
например.
Directory Structure
- редирект-сервер (приложение домашняя папка)
- статический
- index.html
- main.js
- venv (python3 virtualenv)
- основной. py (колба app)
main.py
from flask import Flask, redirect
from flask import render_template
app = Flask(__name__)
@app.route('/')
def index():
return redirect("/abc/xyz")
@app.route('/abc/xyz')
def abc():
return app.send_static_file("index.html")
app.run(debug=True)
index.html
<!DOCTYPE html>
<html>
<head>
<title>Hello</title>
<script type="text/javascript" src="{{ url_for('static', filename='main.js') }}"></script>
</head>
<body>
<h1>Welcome!</h1>
</body>
</html>
Ошибки я получаю следующее
127.0.0.1 - - [28/Oct/2015 14:07:02] "GET /abc/%7B%7B%20url_for('static',%20filename='main.js')%20%7D%7D HTTP/1.1" 404 -
HTML, возвращается в порядке, но он не может найти файл
js
уже упоминали выше, что связывая его с JS не работает –
@IshanKhare: Подставляя эти выражения шаблона ** на сервере ** точно, как колба, Джанго, Mason, Catalyst и др. работа и работа с этим механизмом парадигмы имеют мало шансов на успех, не говоря уже о доставке поддерживаемого кода. Не могли бы вы уточнить, какие симптомы вы пытаетесь выразить, «связывая его?» С js «не работает»? –
Пожалуйста, прочтите весь вопрос –