2010-09-01 6 views
1

Я использую Google appengine и хочу сгенерировать PDF с помощью reportlab. Приложение работает хорошо и может генерировать PDF как «Hello World» и еще немного. Но я хочу получить данные из формы с данными, которые пользователь вводил и генерировать PDF динамически.Appengine - Reportlab PDF

Любой может поделиться куском кода? Буду признателен.

+0

У вас есть вопросы? В документации ReportLab есть много примеров, и это не относится к App Engine. –

ответ

2

Я предполагаю, что вы используете инфраструктуру webapp.

import cgi 

from google.appengine.api import users 
from google.appengine.ext import webapp 
from google.appengine.ext.webapp.util import run_wsgi_app 

class MainPage(webapp.RequestHandler): 
    def get(self): 
     self.response.out.write(""" 
      <html> 
      <body> 
       <form action="/makepdf" method="post"> 
       <div><textarea name="content" rows="3" cols="60"></textarea></div> 
       <div><input type="submit" value="Make a PDF for me"></div> 
       </form> 
      </body> 
      </html>""") 


class MakePDF(webapp.RequestHandler): 
    def post(self): 
     # now here you can make your PDF like you did for the "Hello world" one 
     # and you can access the entered data like this: self.request.get('content') 

application = webapp.WSGIApplication(
            [('/', MainPage), 
             ('/makepdf', MakePDF)], 
            debug=True) 

def main(): 
    run_wsgi_app(application) 

if __name__ == "__main__": 
    main() 
+0

Возможно, я плохо себя объяснил. Пользователь вводит данные, а данные представляются на другой странице в таблице или в div. Не в форме. Как получить данные и перейти в PDF. Я пытался сделать имя teacher.name, и это дает ошибку. – Martinho

+0

Пользователь заполняет форму со свойствами класса Учитель. Затем вы перенаправляетесь на другую страницу, где представлены данные, которые можно редактировать, удалять или печатать в PDF. Вот и проблема. Как сгенерировать PDF с данными, которые он ввел? Возможно, вам нужно получить доступ к Модели, правильно. Поскольку данные являются динамическими, вы можете ввести другие значения, а в PDF - фактические данные. Может ли кто-нибудь помочь? – Martinho

Смежные вопросы