小编Per*_*ryW的帖子

PostgreSQL对数组不敏感的SELECT

我在谷歌或文档中找到答案时遇到问题......
我需要针对数组类型做一个不区分大小写的选择.

因此,如果:

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- 这是最好的方式吗?

sql postgresql case-insensitive pattern-matching

20
推荐指数
3
解决办法
9018
查看次数

选择不是链接的列表项

我必须使用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)

应该不是那么难,我敢肯定,但经过一个小时的演奏,我无处可去.

html javascript jquery

5
推荐指数
1
解决办法
112
查看次数

在python中编写命令行psql命令

背景...我有一个几乎是黑盒子的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 postgresql

5
推荐指数
1
解决办法
6336
查看次数

Python - 将PDF返回给浏览器

我必须在"黑盒子"设备上使用相当基本的Python 2.6(所以没有Django或非标准库).

我必须:

  1. 将一堆html从浏览器发送到服务器上的Python脚本
  2. 做一些处理并使用wkhtmltopdf转换为pdf
  3. 将PDF返回到浏览器

我使用两个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用户而不是常规用户,所以我怀疑我错过了一些相当基本的东西......

python wkhtmltopdf

1
推荐指数
1
解决办法
2699
查看次数