我认为这应该是一个简单的问题来回答.
我有下一堂课:
class GruposHandler(webapp.RequestHandler):
def get(self):
self.obtenerPagina()
def obtenerPagina(self, pOpcion = None, pMensajeInformacion = None):
opcion = pOpcion if pOpcion is not None else self.request.get('opcion')
usuario = obtenerUsuario()
rsGrupos = obtenerGruposAll()
listaOtrosGrupos = []
listaGruposSuscriptos = []
blah blah ........
class NuevoGrupoHandler(webapp.RequestHandler):
def post(self):
nombre = self.request.get('nombre')
descripcion = self.request.get('descripcion')
obj = Grupo.get_by_key_name(nombre)
if obj:
doRender(self, 'nuevo_grupo.html', {'mensaje_descripcion':'Ya existe un grupo con ese nombre.'})
else:
grupo = model.Grupo(key_name = nombre, nombre=nombre, descripcion = descripcion);
grupo.put()
grupoHandler = GruposHandler
grupoHandler.obtenerPagina("gruposMios", 'Informacion: …
Run Code Online (Sandbox Code Playgroud) 我有一个字典列表如下:
listDict = [{'product':'sandwich','price':'5200'}, {'product':'hamburger','price':'3000'}]
Run Code Online (Sandbox Code Playgroud)
迭代我做的元素:
{%for element in listDict%}
{% for key,value in element.items %}
<input type="checkbox" name = "bar" value = "{{ value }}">{{ value }}<br>
{% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,这将打印:
sandwich
5200
hamburger
3000
Run Code Online (Sandbox Code Playgroud)
但我怎么能连接这些值才能打印出这样的东西:
sandwich - 5200
hamburger - 3000
Run Code Online (Sandbox Code Playgroud)
我不能做以下的事情:
for element in listDict:
element['product']+" - "+element['price']
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我有一个使用Reportlab库生成PDF文件的方法:
def obtenerPDFNuevoPedido(self, handler,rsUsuarioPedido, rsPedido):
handler.response.headers['Content-Type'] = 'application/pdf'
handler.response.headers['Content-Disposition'] = 'attachment; filename=output.pdf'
story = []
story.append(Paragraph('CHIPAS', ParagraphStyle(name="centeredStyle", alignment=TA_CENTER, fontSize=20)))
story.append(Paragraph('____________ENLANUBE', ParagraphStyle(name="centeredStyle", alignment=TA_CENTER, fontSize=20)))
story.append(Spacer(6, 22))
story.append(Table([[Paragraph(str(strftime("%Y-%m-%d", gmtime())), ParagraphStyle(name="centeredStyle", alignment=TA_LEFT, fontSize=7)),
Paragraph(str(strftime("%H:%M:%S", gmtime())), ParagraphStyle(name="centeredStyle", alignment=TA_RIGHT, fontSize=7))]],colWidths=[5.05 * cm, 3.1 * cm]))
story.append(Paragraph("DEVELOPED AT ROSHKA-LABS", ParagraphStyle(name="centeredStyle", alignment=TA_CENTER, fontSize=6)))
story.append(Paragraph('-'*50, styleCentered))
#...
#...
doc = SimpleDocTemplate(handler.response.out, pagesize=letter)
doc.build(story)
Run Code Online (Sandbox Code Playgroud)
当我调用该方法时,它会打开一个保存对话框,我可以在其中指定文件的保存位置.
我怎么做才能将生成的pdf文件保存在数据存储区中?
提前致谢!
python pdf google-app-engine reportlab google-cloud-datastore
我正在制作一些用于网络应用的pdf报告.
我想知道我采取的设计方式是否合适.
这将是我做事情的截图.
如您所见,我使用表格来定位文档中的所有内容.我认为这与HTML非常相似.但我想知道是否有更好的方法来获得相同的结果.这是没有单元格边框的文档:
如有必要,我可以发布代码.顺便说一下,为什么我可以花费很长时间用iText工具编程这些东西,这样我可以更快地做事并且可能更好地用iReport查看?我喜欢iText,这只是一个问题.
对不起我的英文,谢谢!
鉴于这个简单的类:
class RenderResponseHandler(webapp2.RequestHandler):
def __init__(self):
self.nombreUsuario = obtenerUsuarioTablaUsuario().nombre if obtenerUsuarioTablaUsuario() else None
def doRender(self, tname='index.html',values = {}):
temp = os.path.join(os.path.dirname(__file__),
'templates/'+tname)
if not os.path.isfile(temp):
return False
self.nombreUsuario = obtenerUsuarioTablaUsuario().nombre if obtenerUsuarioTablaUsuario() else None
newval = dict(values)
newval['path'] = self.request.path
if nombreUsuario:
url_linktext = 'logout'
else:
url_linktext = 'login'
newval['url_linktext'] = url_linktext
newval['nombreUsuario'] = nombreUsuario
template = jinja_environment.get_template(tname)
outstr = template.render(newval)
self.response.out.write(outstr)
return True
def obtenerPagina(self, pOpcion = None, pMensajeInformacion = None):
opcion = pOpcion if pOpcion is not None else …
Run Code Online (Sandbox Code Playgroud) 我找到了一些关于如何在iText中绘制表单的教程,但是我需要将它插入到单元格中,我不知道如何.感谢您对此事的考虑.
我需要在iText中做这样的事情:
Font fuente=new Font(Font.getFamily("ARIAL"),30,Font.BOLD);
Run Code Online (Sandbox Code Playgroud)
但是使用ARIAL字体,我需要在Paragraph上使用TIMES NEW ROMAN字体.我怎么能做到这一点?
谢谢.
我正在尝试使用App Engine Python上的reportlab生成PDF报告.
但我不知道如何正确附加图像.
图像是静态的.
这是我项目的目录树.
这就是我所做的(在' chipas.py ' 里面)来获取图像:
im = Image('../static/logo.png',1*inch, 1*inch)
story.append(im)
...
Run Code Online (Sandbox Code Playgroud)
我得到的堆栈跟踪:
回溯(最近一次调用最后一次):文件"C:\ Users\Lucas\Dropbox\Desarrollo\Python\windows\AppEngine\google\appengine\ext\webapp_webapp25.py",第701行,在call handler.get(*groups)中文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\chipas.py",第1035行,在获取doc.build(story)文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\doctemplate.py",第1117行,在构建BaseDocTemplate.build(self,flowables,canvasmaker = canvasmaker)文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\doctemplate.py",第880行,在构建self.handle_flowable(flowables)文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas- windows\src\reportlab\platypus\doctemplate.py",第763行,如果是frame.add,则在handle_flowable中(f,canv,trySplit = self.allowSplitting):文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\frames.py",第159行,在_add w中,h = flowable.wra p(aW,h)文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\flowables.py",第408行,在wrap中返回self.drawWidth,self. drawHeight文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\ flowables.py ",第402行,在getattr self._setup_inner()文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\flowables.py",第368行,在_setup_inner中img = self._img文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\platypus\ flowables.py ",第398行,在getattr self._img = ImageReader(self._file)文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas -windows\src\reportlab\lib\utils.py",第541行,在init中, 如果_isPILImage(fileName):文件"C:\ Users\Lucas\Dropbox\Desarrollo\workspace\python\chipas-windows\src\reportlab\lib\utils.py",第521行,在_isPILImage中返回isinstance(im,Image.Image)AttributeError:'NoneType'对象没有attribut e'Image'INFO 2012-02-29 19:54:37,276 dev_appserver.py:4247]"GET/pdf?pedido = ahVkZXZ-Y2hpcGFzLWludGhlY2xvdWRyLwsSBlBlZGlkbyIjMjAxMi0wMi0yOSAxOTo1NDoxOHRlc3RAZXhhbXBsZS5jb20M HTTP/1.1"500 -
在使用reportlab生成的pdf文档中添加图像文件的正确方法是什么?提前谢谢了!
可能重复:
C面试问题中的"条件"是什么?
可以这样做吗?
码:
if(condition) {
printf("Hello")
} else {
printf("World");
}
Run Code Online (Sandbox Code Playgroud)
结果:Hello World
应该用什么条件才能做到这一点?
请帮忙.提前致谢.