Web2py - 上传图像
Web2py - Uploading an image
我的控制器里有 default.py
:
def images():
record = db.images(request.args(0))
form = SQLFORM(db.images, record, deletable=True,
upload=URL('download'), fields=['image'])
if request.vars.image!=None:
# form.vars.image_filename = request.vars.image.filename
form.vars.image_filename = "picture_spark_"+str(auth.user.id)
# form.vars.image_filename = "default"
if form.process().accepted:
response.flash = 'form accepted'
elif form.errors:
response.flash = 'form has errors'
return form
def dashboard():
return dict(img_upload_form=images())
在我看来dashboard.html
,我使用这样的形式:
{{=img_upload_form}}
然而,问题是它不起作用。我选择了一张图片,但在我点击提交后,没有任何变化。
感谢任何帮助!
为了解决这个问题,
我在 default.py
控制器中添加了 print record
行。
我观察到的是输出是 None
。
我的 URL 是 http://127.0.0.1:8000/Spark/default/home
。本质上,home.html
对 dashboard.html
.
进行了 AJAX 调用
现在,在我的控制器中,我将其定义如下:
def dashboard():
return dict(img_upload_form=images())
我需要做的是 return 与 home.html
相同的表格
def home():
return dict(img_upload_form=images())
这让我成功上传了图片!
我的控制器里有 default.py
:
def images():
record = db.images(request.args(0))
form = SQLFORM(db.images, record, deletable=True,
upload=URL('download'), fields=['image'])
if request.vars.image!=None:
# form.vars.image_filename = request.vars.image.filename
form.vars.image_filename = "picture_spark_"+str(auth.user.id)
# form.vars.image_filename = "default"
if form.process().accepted:
response.flash = 'form accepted'
elif form.errors:
response.flash = 'form has errors'
return form
def dashboard():
return dict(img_upload_form=images())
在我看来dashboard.html
,我使用这样的形式:
{{=img_upload_form}}
然而,问题是它不起作用。我选择了一张图片,但在我点击提交后,没有任何变化。
感谢任何帮助!
为了解决这个问题,
我在 default.py
控制器中添加了 print record
行。
我观察到的是输出是 None
。
我的 URL 是 http://127.0.0.1:8000/Spark/default/home
。本质上,home.html
对 dashboard.html
.
现在,在我的控制器中,我将其定义如下:
def dashboard():
return dict(img_upload_form=images())
我需要做的是 return 与 home.html
def home():
return dict(img_upload_form=images())
这让我成功上传了图片!