如果您想了解PythonPyramid和Chameleon模板语言转义html的相关知识,那么本文是一篇不可错过的文章,我们将对pythonhtml转换为普通文本进行全面详尽的解释,并且为您提供关于H
如果您想了解Python Pyramid和Chameleon模板语言转义html的相关知识,那么本文是一篇不可错过的文章,我们将对python html转换为普通文本进行全面详尽的解释,并且为您提供关于HAML或Jade模板语法可用于Python?、HTML代码,使用python在一个html页面中显示splitted data_frame、jquery – Python Pyramid视图中的异常管理、Pyramid 1.1正式版发布,Python Web开发框架的有价值的信息。
本文目录一览:- Python Pyramid和Chameleon模板语言转义html(python html转换为普通文本)
- HAML或Jade模板语法可用于Python?
- HTML代码,使用python在一个html页面中显示splitted data_frame
- jquery – Python Pyramid视图中的异常管理
- Pyramid 1.1正式版发布,Python Web开发框架
Python Pyramid和Chameleon模板语言转义html(python html转换为普通文本)
我无法理解变色龙的标签。我是django使用者,但决定将我的CompSci课程伙伴和我自己介绍给Pyramid,因为我虽然更轻巧=更容易学习。
目前,$ {}标签正在转义我尝试通过其输出的任何html标签。在django中,有一种方法可以指定变量是“安全的”并且不需要进行转义。
如何在金字塔/变色龙中做同样的事情?
答案1
小编典典Chameleon基于Zope页面模板库,因此,如果您发现缺少Chameleon文档,则不妨查看zpt文档。
无论如何,有两种主要方法可以做到这一点。如果使用tal:replace或tal:content标记属性进行渲染,则可以使用“
structure”。这是通过structure
在字符串的开头放置一个空格,最后是要呈现的模板变量的名称来完成的。一个例子如下所示:
s = ''''''<html> <head> </head> <body> <div tal:content="structure t"> </div> </body></html>''''''from chameleon import PageTemplatept = PageTemplate(s)print pt(t=''<p>Hi!</p>'')
如果您不想使用tal:replace或tal:content函数,则需要将字符串包装在Chameleon渲染器将不会尝试转义的对象中(这意味着它具有一个__html__
返回字符串应为真值的方法)
。通常,这意味着创建一个“文学”类,如下所示:
a = ''''''<html> <head> </head> <body> <div> ${t} </div> </body></html>''''''from chameleon import PageTemplatept = PageTemplate(a)class Literal(object): def __init__(self, s): self.s =s def __html__(self): return self.sprint pt(t=Literal(''<p>Hi!</p>''))
HAML或Jade模板语法可用于Python?
解决方法
Pyjade is a Jade Syntax adapter for Django,Jinja2 and Mako templates
免责声明:我是店主:)
HTML代码,使用python在一个html页面中显示splitted data_frame
Col1 Col2 1 a 2 a 3 a 4 a 5 b 6 b 7 b 8 b
我希望看到文字为
Col1 Col2 Col1 Col2 1 a 5 b 2 a 6 b 3 a 7 b 4 a 8 b
我的html / css代码应该如何在分割表中显示上面的数据?
对于第一个输出,在一个表中查看2列中的所有数据我正在使用代码python:
start = '''<html><head><Meta http-equiv="Content-Type" content="text/html; charset=utf-8"></Meta></head> ''' font_size = '14pt''<style media="screen" type="text/css"> table.table1 { border-collapse: collapse; width: 20%; font-size: '''+font_size+'''; } td { text-align: left; border: 1px solid #ccc; } th { text-align: left; border: 1px solid #ccc; background-color: #072FB1; } </style> ''' title = '''<div align="center"></br><font size = "24"><strong>'''+title+'''</strong></font></br></br></</div>''' df_data1 = df_data[1:10] data = df_data1.to_html( index = False,na_rep ='' ) data = data.replace('None','') style_headers = 'background-color: #072FB1; color: #ffffff;' style_status_new ='background-color: #587EF8; color: #ffffff;font-weight:bold' style_first_col = 'font-weight:bold;' total = 'TOTAL' soup = bs4.BeautifulSoup(data) soup.thead.tr.attrs['style'] = style_headers html = start+lentos+style+'''<body bgcolor="#FFFFFF">'''+title+time+unicode.join(u'\n',map(unicode,soup))+finish try: with open(dir_files+'engines_tv_html.html','w') as file: file.write(html.encode('UTF-8')) except Exception,e: log_error()
在df_data [1:10]中,我将数据拆分为单独的data_frames.
所以问题是在一个html页面中看到splitted data_frame(左边的一个表和右边的另一个表)
解决方法
pandas.DataFrame
管理,我建议您尝试使用
pandas构建表.
pd.merge(left=df_data[0:4],left_index=True,right=df_data[4:8].reset_index(drop=True),right_index=True,suffixes=['_left','_right'],how='outer') Col1_left Col2_left Col1_right Col2_right 0 1 a 5 b 1 2 a 6 b 2 3 a 7 b 3 4 a 8 b
jquery – Python Pyramid视图中的异常管理
我正在编写Python Pyramid项目,我使用jQuery和jquery.form.js.我希望我的观点能够处理HTTP和AJAX帖子(我不确定它是否是最好的主意,但这可能是另一个问题的内容).
现在,当发送HTTP POST并发生错误时,我使用self.request.session.flash()进行错误通知.
但是当发布Ajax时,我返回HTTPOk()或HTTPServerError()响应,这样我就可以轻松地向用户显示错误消息:
$('.ajax_form').ajaxForm({
error: function(xhr, textStatus, err){
$('.ajax_messages>.alert').hide().siblings('.alert-error').show().children('p').text(xhr.responseText);
},
success: function(responseText, statusText, xhr){
$('.ajax_messages>.alert').hide().siblings('.alert-success').show().children('p').text(xhr.responseText);
}
});
但是,正如Loïc Faure-Lacroix建议我可以为Ajax和HTTP请求发送dict,这样可以简化代码.
什么是更好的主意?抛出异常时我应该从视图中返回什么?
解决方法:
我们的想法是返回一个包含json响应中所需值的dict.此dict可以通过json或您的模板呈现.在错误情况下,您可以将响应状态设置为500.如果您执行的所有操作都相同(json和html需要相同的数据,相同的响应代码),则此方法有效.否则你的生活将会很艰难,最好将它分开.
@action(name='ftp', renderer='templates/ftp.pt')
@action(xhr=True, renderer='json', name='ftp')
def ftp_ajax(self):
log.debug('View: %s', 'ftp (ajax)')
if 'form.submitted' in self.params:
try:
self.config.save(self.params)
except:
request.response.status = 500
return {'status': 'error', 'error_msg': 'some error'}
else:
return {'status': 'success'}
request.response.status = 400
return {'status': 'error', 'error_msg': 'invalid request'}
您所要做的就是确保您的模板可以处理’status’和’error_msg’字段并且您很高兴.同样,只有在模板的要求是您为json返回的内容的子集时,这才有效.
Pyramid 1.1正式版发布,Python Web开发框架
Python Web开发框架Pyramid 1.1正式版发布了!
Pyramid是Pylons Project的核心产品,它具有灵活轻巧、运行速度快的特点。
Pyramid 1.1的新特性如下:
支持request.response属性;New views introspection feature: paster pviews;支持静态路由; 默认的HTTP异常视图;http_cache视图配置参数允许Pyramid设置HTTP缓存头文件; 新特性使得在Pyramid环境中写脚本更容易,同时该版本还改进了依赖性,并完善了文档。
更多更新内容:http://docs.pylonsproject.org/projects/pyramid/1.1/whatsnew-1.1.html
安装说明:http://docs.pylonsproject.org/projects/pyramid/1.1/narr/install.html
关于Python Pyramid和Chameleon模板语言转义html和python html转换为普通文本的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于HAML或Jade模板语法可用于Python?、HTML代码,使用python在一个html页面中显示splitted data_frame、jquery – Python Pyramid视图中的异常管理、Pyramid 1.1正式版发布,Python Web开发框架等相关知识的信息别忘了在本站进行查找喔。
本文标签: