Прежде всего, я новичок здесь, поэтому, если я допустил какие-либо ошибки, укажите их.
Я работаю над проектом движка приложений на python, где хочу загружать и играть в игры в формате .swf. У меня возникли проблемы с обработчиком приложений для отправки (доставки, рендеринга, отображения, ... не знаю, каков правильный термин) файлов с окончанием .swf.
Что я делаю не так?
Я попытался встроить картинку в мой тег объекта, чтобы убедиться, что мой шаблон html и Django не является причиной проблемы, и работает нормально.
Это мой файл app.yaml
application: flashstealer
version: 1
runtime: python
api_version: 1
handlers:
- url: /stylesheets
static_dir: stylesheets
- url: /images
static_dir: images
- url: /flashgames
static_dir: flashgames
- url: .*
script: main.py
... и мой main.py
import wsgiref.handlers
from google.appengine.ext import db
from google.appengine.ext import webapp
from google.appengine.ext.webapp import template
class Game(db.Model):
name = db.StringProperty()
description = db.StringProperty()
tags = db.StringListProperty()
playcount = db.IntegerProperty()
location = db.StringProperty()
originallocation = db.StringProperty()
class MyHandler(webapp.RequestHandler):
def get(self):
games = db.GqlQuery('SELECT * FROM Game LIMIT 20')
self.response.out.write(template.render('main.html',{'games': games}))
def post(self):
game = Game(
name = self.request.get('name'),
description = self.request.get('description'),
#tags = self.request.get('tags'),
#playcount = self.request.get('playcount'),
location = self.request.get('location'),
originallocation = self.request.get('originallocation'))
game.put()
self.redirect("/")
def main():
app = webapp.WSGIApplication([(r'.*', MyHandler)],debug=True)
wsgiref.handlers.CGIHandler().run(app)
if __name__ == '__main__':
main()
... и мой main.html
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Emporium by Free Css Templates</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="stylesheets/default.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="wrapper">
<!-- start header -->
<div id="logo">
<h1><a href="#">The Arcade</a></h1>
<h2> » but just a fondation for now</h2>
</div>
<div id="header">
<div id="menu">
<ul>
<li class="current_page_item"><a href="#">Homepage</a></li>
<li><a href="#">Blogs</a></li>
<li><a href="#">Photos</a></li>
<li><a href="#">About</a></li>
<li class="last"><a href="#">Contact</a></li>
</ul>
</div>
</div>
<!-- end header -->
</div>
<!-- start page -->
<div id="page">
<!-- start content -->
<div id="content">
{% for game in games %}
<div class="post">
<h1 class="title">{{game.name}}</h1>
<div class="entry">
<embed src="{{game.location}}" width="100%" height="400">
<p>{{game.description}}</p>
</div>
<div class="meta">
<p class="links">
<a href="#" class="more">Read full article</a>
<b>|</b>
<a href="#" class="comments">Play Count ({{game.playcount}})</a>
</p>
</div>
</div>
{% endfor %}
<div class="post">
<h2 class="title">Submit Games Here</h2>
<div class="entry">
<form action="" method="post">
<fieldset>
Name:<p><input type="stringfield" name="name" ></p>
Descrition:<p><input type="stringfield" name="description"></p>
Original Location:<p><input type="stringfield" name="originallocation"></p>
Playcount:<p><input type="stringfield" name="playcount" ></p>
Location:<p><input type="stringfield" name="location"></p>
Tags:<p><input type="stringfield" name="tags"></p>
<p><input type="submit" value="post"></p>
</fieldset>
</form>
</div>
<div class="meta">
<p class="links">
<a href="#" class="more">Read full article</a>
<b>|</b>
<a href="#" class="comments">Comments (32)</a>
</p>
</div>
</div>
</div>
<!-- end content -->
<!-- start sidebar -->
<div id="sidebar">
<ul>
<li id="search">
<h2>Search</h2>
<form method="post" action="">
<fieldset>
<input type="text" id="message" name="message" value="" />
<input type="submit" id="x" value="Search" />
</fieldset>
</form>
</li>
<li>
<h2>To Do</h2>
<ul>
<li><a href="#">make a list of games in db</a></li>
</ul>
</li>
</ul>
</div>
<!-- end sidebar -->
<div style="clear: both;"> </div>
</div>
<!-- end page -->
<!-- start footer -->
<div id="footer">
<p id="legal"></p>
</div>
<!-- end footer -->
</body>
</html>
Поскольку я новичок, я не могу публиковать фотографии напрямую
как это показывает браузер
Вот как это проявляется, когда я просматриваю визуализированный (опять же, как бы он ни назывался) html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Emporium by Free Css Templates</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="stylesheets/default.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="wrapper">
<!-- start header -->
<div id="logo">
<h1><a href="#">The Arcade</a></h1>
<h2> » but just a fondation for now</h2>
</div>
<div id="header">
<div id="menu">
<ul>
<li class="current_page_item"><a href="#">Homepage</a></li>
<li><a href="#">Blogs</a></li>
<li><a href="#">Photos</a></li>
<li><a href="#">About</a></li>
<li class="last"><a href="#">Contact</a></li>
</ul>
</div>
</div>
<!-- end header -->
</div>
<!-- start page -->
<div id="page">
<!-- start content -->
<div id="content">
<div class="post">
<h1 class="title">Test with .swf</h1>
<div class="entry">
<embed src="/flashgames/aow2.swf">
<p>This is were the problem starts because it leaves a spot where the game should be but there's no game.</p>
</div>
<div class="meta">
<p class="links">
<a href="#" class="more">Read full article</a>
<b>|</b>
<a href="#" class="comments">Play Count (None)</a>
</p>
</div>
</div>
<div class="post">
<h1 class="title">Test with .img</h1>
<div class="entry">
<object width="100%" height="400">
<embed src="/images/img01.jpg">
</object>
<p>This is proof that it's not my html and template that's causing the problem</p>
</div>
<div class="meta">
<p class="links">
<a href="#" class="more">Read full article</a>
<b>|</b>
<a href="#" class="comments">Play Count (None)</a>
</p>
</div>
</div>
<div class="post">
<h2 class="title">Submit Games Here</h2>
<div class="entry">
<form action="" method="post">
<fieldset>
Name:<p><input type="stringfield" name="name" ></p>
Descrition:<p><input type="stringfield" name="description"></p>
Original Location:<p><input type="stringfield" name="originallocation"></p>
Playcount:<p><input type="stringfield" name="playcount" ></p>
Location:<p><input type="stringfield" name="location"></p>
Tags:<p><input type="stringfield" name="tags"></p>
<p><input type="submit" value="post"></p>
</fieldset>
</form>
</div>
<div class="meta">
<p class="links"><a href="#" class="more">Read full article</a> <b>|</b> <a href="#" class="comments">Comments (32)</a></p>
</div>
</div>
</div>
<!-- end content -->
<!-- start sidebar -->
<div id="sidebar">
<ul>
<li id="search">
<h2>Search</h2>
<form method="post" action="">
<fieldset>
<input type="text" id="message" name="message" value="" />
<input type="submit" id="x" value="Search" />
</fieldset>
</form>
</li>
<li>
<h2>To Do</h2>
<ul>
<li><a href="#">make a list of games in db</a></li>
</ul>
</li>
</ul>
</div>
<!-- end sidebar -->
<div style="clear: both;"> </div>
</div>
<!-- end page -->
<!-- start footer -->
<div id="footer">
<p id="legal">( c ) 2008. All Rights Reserved. <a href="http://www.freecsstemplates.org/">Bestfriends</a> designed by <a href="http://www.freecsstemplates.org/">Free CSS Templates</a>.</p>
</div>
<!-- end footer -->
</body>
</html>
это папки в моем корне и их содержимое
- изображения
- img01.jpg
- img02.jpg
- img03.jpg
- spacer.gif
- flashgames
- таблицы стилей