我在谷歌或文档中找到答案时遇到问题......
我需要针对数组类型做一个不区分大小写的选择.
因此,如果:
value = {"Foo","bar","bAz"}
Run Code Online (Sandbox Code Playgroud)
我需要
SELECT value FROM table WHERE 'foo' = ANY(value)
Run Code Online (Sandbox Code Playgroud)
匹配.
我尝试了很多lower()的组合而没有成功.
ILIKE
而不是=
似乎工作,但我一直很紧张LIKE
- 这是最好的方式吗?
我必须使用jquery将内容管理系统中用户输入的无序列表转换为引导菜单(导航栏).
80%除了一个挑战,我无法找到一个很好的解决方案 - 即一个使用选择器而不是字符串操作或正则表达式.毕竟,我们都知道我们永远不会用正则表达式解析html :)
因此,使用用户可以使用的有限UI工具,它们会生成一个列表,通常是两级嵌套列表,如下所示
<ul>
<li>Blah1
<ul>
<li><a href='http://xxxx'>Blah1a</a></li>
<li><a href='http://yyyy'>Blah1b</a></li>
<li>Blah1c</li>
<li><a href='http://zzzz'>Blah1d</a></li>
</ul>
</li>
<li><a href='http://aaaa'>Blah2</a></li>
<li>Blah3
<ul>
<li><a href='http://xxxx'>Blah2a</a></li>
<li><a href='http://yyyy'>Blah2b</a></li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
等等...重要的是,他们的一些列表项是链接,有些只是文本.
我需要选择<li>中包含的每个文本块,这些文本块尚未包含在<a>中并将其包装在<a href="#">中,以便将上述内容转换为:
<ul>
<li><a href='#'>Blah1</a>
<ul>
<li><a href='http://xxxx'>Blah1a</a></li>
<li><a href='http://yyyy'>Blah1b</a></li>
<li><a href='#'>Blah1c</a></li>
<li><a href='http://zzzz'>Blah1d</a></li>
</ul>
</li>
<li><a href='http://aaaa'>Blah2</a></li>
<li><a href='#'>Blah3</a>
<ul>
<li><a href='http://xxxx'>Blah2a</a></li>
<li><a href='http://yyyy'>Blah2b</a></li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
应该不是那么难,我敢肯定,但经过一个小时的演奏,我无处可去.
背景...我有一个几乎是黑盒子的Web应用程序设备,后端有一个postgres数据库虽然我可以访问命令行,psql和一个相当基本的Python 2.7安装,但这是相当有限的(没有能力)例如,安装其他python库 - 是的,我知道我可以破解这个但是这里有一个合同和实用的元素)
问题... DB中的表以bytea格式存储图像.根据ajax调用中浏览器传递的一些参数,我需要将图像提取到/ tmp
要从psql执行此操作,我可以这样做:
\copy (SELECT encode(image, 'hex') FROM images WHERE img_id = (select bin_id from binaries where id = '12345678')) TO '/tmp/12345678.jpg'
Run Code Online (Sandbox Code Playgroud)
所以...
回到Python.
我没有sql库,但我有os和subprocess
通常,查询db我会使用os来:
something = os.popen(os_str).read()
Run Code Online (Sandbox Code Playgroud)
其中os_str是一个附加了SQL语句的psql shell命令
目前我的测试脚本如下:
import os, sys, cgi, cgitb
form = cgi.FieldStorage()
uid = form.getvalue('uid')
if uid is None : # missing user_id
uid = "12345678"
imgType = form.getvalue('imgType')
if imgType is None : # missing imgType
imgType = "png"
imgName = uid + "." + imgType …
Run Code Online (Sandbox Code Playgroud) 我必须在"黑盒子"设备上使用相当基本的Python 2.6(所以没有Django或非标准库).
我必须:
我使用两个Python脚本 - makePDF和getPDF在makePDF的末尾我有一个有效的/tmp/xxx.pdf坐在服务器上 - 我可以通过SCP传输它,它在杂技演员中打开没有问题 - 没有问题(它应该总是低于100k - 2mb大小btw).
我的问题是将文件发送回浏览器
这是getPDF
#!/usr/bin/python
from tempfile import *
tempfile=gettempdir()+"/xxx.pdf"
f = open(tempfile, 'r')
pdf = f.read()
f.close()
print 'Content-Type: application/pdf'
print pdf
Run Code Online (Sandbox Code Playgroud)
它看起来应该工作 - 如果我在开发工具中观看http对话,我可以看到返回了169k的内容长度,但它没有显示响应数据,如果使用我选择的武器,'Advanced Rest Client'chrome extn我看到一个包含看似kosher pdf文件的响应:
%PDF-1.4
1 0 obj
<<
/Title (??Briefing Pack)
/Creator (??)
/Producer (??wkhtmltopdf)
/CreationDate (D:20131101095256+10'30')
>>
... etc
Run Code Online (Sandbox Code Playgroud)
浏览器显示"无法加载PDF文档"错误
我认为很明显我是一个偶尔的Python用户而不是常规用户,所以我怀疑我错过了一些相当基本的东西......