我正在尝试从Web2Py表单上传一个zip文件,然后阅读内容:
form = FORM(TABLE(
TR(TD('Upload File:', INPUT(_type='file',
_name='myfile',
id='myfile',
requires=IS_NOT_EMPTY()))),
TR(TD(INPUT(_type='submit',_value='Submit')))
))
if form.accepts(request.vars):
data=StringIO.StringIO(request.vars.myfile)
import zipfile
zfile=zipfile.Zipfile(data)
Run Code Online (Sandbox Code Playgroud)
由于某些原因,虽然上传的文件是zip文件,但此代码确实有效并且抱怨文件不是zip文件.
我是新来的Web2Py.如何data表示为zip文件?
我对学习网络编程非常感兴趣..我想使用python中的东西,但不确定我是否要使用web2py或django .. Django似乎很难设置为像我这样的初学者..但我不想把它扔出去......那么对Web编程框架有什么专家意见呢?另外,如果django真的不像看起来那么难,有人可以解释我将如何设置它.提前致谢!!
我正在尝试使用SQLFORM.grid来显示项目的查询,并且有一个布尔字段将显示为表单上的复选框.我希望能够检查我想要移动的项目的复选框.提交时,它会对数据库进行更新,并执行将所选项目的图像文件复制到文件夹中的特殊功能.
我的SQLFORM.grid正常显示复选框,但我根本无法选中复选框.同样,我不知道我将如何拥有它,以便选定的项目将经历这两个步骤.
我甚至在SQLFORM.grid上设置了editable = True也设置了db.items.isMoved.writeable = True
以下是我的代码:
模型:
db.define_table('items',
Field('itemNumber', 'id'), Field('numSold', 'integer'),
Field('imageName', 'string'), Field('isMoved','boolean')
Field('timeStamp', 'datetime'))
Run Code Online (Sandbox Code Playgroud)
控制器:
class VirtualProfitField(object):
def profit(self):
return "$" + str(self.items.price * self.items.numSold)
db.items.virtualfields.append(VirtualProfitField())
def display_form():
default_sort_order = [ebaydb.items.numSold]
db.items.timeStamp.readable = False
db.items.imageName.readable = False
query = (db.items.numSold > 100)
default_sort_order = [db.items.numSold]
form = SQLFORM.grid(query=query, orderby=default_sort_order, create=True,
deletable=True, editable=True, maxtextlength=64, paginate=25, csv=False,
links=[dict(header=T('Profit'),body=lambda row: row.profit),
dict(header=T('Image'),
body = lambda rowB: A(IMG(_src=URL('static', "images/images/"+
rowB.imageName.replace('\\','/')), _width=50, _height=50), _href=URL('static',
"images/images/"+ rowB.imageName.replace('\\','/'))))]
if len(request.args) > 1 …Run Code Online (Sandbox Code Playgroud) 当我有以下查询:
str(db(db.items.id==int(row)).select(db.items.imageName)) + "\n"
Run Code Online (Sandbox Code Playgroud)
输出包括字段名称:
items.imageName
homegear\homegear.jpg
Run Code Online (Sandbox Code Playgroud)
如何删除它,以便不包括字段名称,只包括所选的图像名称.
我尝试引用它像列表[1]给我一个超出范围的错误和[0]我最终得到:
<Row {'imageName': 'homegear\\homegear.jpg'}>
Run Code Online (Sandbox Code Playgroud)
以上不是列表,那是什么对象,我该如何参考呢?
谢谢!
约翰
几年前,我开始开发基于Bottle Web 框架的 Web 应用程序。我当时选择 Bottle 是因为它是最容易启动和快速运行的解决方案,而且我只是在为我的想法构建一个原型。现在,我有几千行代码,我正在寻求进入生产级解决方案。
起初我认为我应该转向一个完整的堆栈框架,例如django或web2py。当我朝着那个方向前进时,我开始只在需要时使用其他框架的各个部分。例如,我实现了 web2py 的数据访问层 (DAL),以便我可以在
谷歌应用引擎,现在我正在考虑使用 web2py 的调度程序来管理作业。然后,我开始使用cherrypy作为生产级的网络服务器。我尝试了火箭服务器,但我遇到了更多的错误,所以我更喜欢cherrypy而不是火箭。
我开始考虑重写我的代码以完全使用 web2py 的全栈解决方案;然而,重写我的路由函数以完全迁移到 web2py 的时间似乎很重要,我真的对火箭服务器不满意。
我真的很喜欢 Bottle 的简单性,Bottle 使用装饰器函数将路由映射到函数的方式,以及可扩展性的哲学。
我想知道与任何完整堆栈框架相比,使用 Bottle 进行路由在性能方面是否有任何特定优势。
我感谢任何人对此的建议!
我打算写一个新的webapp,我为我的后端找到了两个选项 - web2py或django.
我最近遇到了jQuery并发现它非常酷.
我可以用jQuery代替django和web2py并完成这个webapp.
我将要实现的一些功能 - 用户配置文件,用户可以向网站添加内容等.
是否可以单独使用jQuery?
我正在创建一个学校管理系统,负责处理教师和学生的文件上传和下载.此外,将有大量的数据库写入和读取(例如,学生正在学习哪些课程,学生的成绩等等)
我希望在前端使用AJAX模型使用python更新动态网页.
在后端我想使用python进行文件处理,数据库读取向用户显示其内容,数据库写入用户在Web应用程序和内存缓存上更新他/她的内容.
我正在使用的堆栈是......
CentOS + Hadoop + Hypertable + Python
我目前正在阅读金字塔文档,经过几章后,我看不到金字塔如何帮助我完成我在PHP中可以做的事情,如果它确实这样做,为什么这么复杂?
金字塔是正确的工具,还是我应该使用web2py?
如果金字塔是最好的工具,我在哪里可以看到金字塔中构建的复杂应用程序的示例代码.在阅读其他代码时,我倾向于最清楚.
由于缺乏灵活性,Django无法使用