# ! /usr/bin/env python # -*- coding: utf-8 -*- # login_frontend.py """ Python 2.7.3 Cherrypy 3.2.2 PostgreSQL 9.1 psycopy2 2.4.5 SQLAlchemy 0.7.10 """ 我在join一个Python / SQLAlchemy类中的四个表时遇到问题。 我试着这样做,所以我可以遍历这个类的实例,而不是通过ORM连接表获得的名称元组。 为什么这一切? 因为我已经开始这么做了,所以我走得太远了,放弃了。 另外,它必须是可能的,所以我想知道它是如何完成的。 对于这个项目(cherrypy web-frontend),我得到了一个已经完成的表类的模块。 我把它移到了这篇文章的底部,因为也许这对你来说甚至是不必要的。 以下仅是联合多表类尝试的一个示例。 我选了一个不止两个表格和一个联结表的简单情况。 在这里,我不写入这些连接的表,但它是必要的其他地方。 这就是为什么课程将是这个问题的一个很好的解决scheme。 我的一个联合class的尝试, 这是给定的表类模块和这两个网站的例子的组合: – 将一个类映射到多个表 – SQLAlchemy:一个类 – 两个表 class JoinUserGroupPerson (Base): persons = md.tables['persons'] users = md.tables['users'] user_groups […]
我需要从客户端发送到服务器的JSON。 我正在使用Python 2.7.1和simplejson。 客户正在使用请求。 服务器是CherryPy。 我可以从服务器获取硬编码的JSON(代码未显示),但是当我尝试将JSON发布到服务器时,我得到“400错误请求”。 这是我的客户代码: data = {'sender': 'Alice', 'receiver': 'Bob', 'message': 'We did it!'} data_json = simplejson.dumps(data) payload = {'json_payload': data_json} r = requests.post("http://localhost:8080", data=payload) 这是服务器代码。 class Root(object): def __init__(self, content): self.content = content print self.content # this works exposed = True def GET(self): cherrypy.response.headers['Content-Type'] = 'application/json' return simplejson.dumps(self.content) def POST(self): self.content […]
我有一台机器在我的本地局域网(machineA)有两个Web服务器。 第一个是XBMC的内置(在8080端口),并显示我们的图书馆。 第二个服务器是一个CherryPy python脚本(端口8081),我用它来触发文件转换的需求。 文件转换由来自XBMC服务器提供的页面的AJAX POST请求触发。 转到http:// machineA:8080显示库 图书馆被显示 用户点击“转换”链接发出以下命令 – jQuery的Ajax请求 $.post('http://machineA:8081', {file_url: 'asfd'}, function(d){console.log(d)}) 浏览器使用以下标题发出HTTP OPTIONS请求; 请求标题 – 选项 Host: machineA:8081 User-Agent: … Firefox/4.01 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 115 Connection: keep-alive Origin: http://machineA:8080 Access-Control-Request-Method: POST Access-Control-Request-Headers: x-requested-with 服务器响应以下内容; 响应标题 – 选项(状态= 200确定) Content-Length: 0 Access-Control-Allow-Headers: * Access-Control-Max-Age: 1728000 […]