尝试使用html python和google应用程序引擎上传照片
有人能就如何解决这个问题给出一个基本的想法吗。它在本地主机上不工作,blobstore也不工作。还有其他方法吗?或者有人能告诉我正确的方法吗? 我只显示与查询相关的代码。。。。 这是错误的图片 html代码尝试使用html python和google应用程序引擎上传照片,python,html,google-app-engine,webapp2,blobstore,Python,Html,Google App Engine,Webapp2,Blobstore,有人能就如何解决这个问题给出一个基本的想法吗。它在本地主机上不工作,blobstore也不工作。还有其他方法吗?或者有人能告诉我正确的方法吗? 我只显示与查询相关的代码。。。。 这是错误的图片 html代码 <div class="form-group"> <input type="file" class="form-control" name="profile_pic" value="" placeholder="profile_pic">
<div class="form-group">
<input type="file" class="form-control" name="profile_pic" value="" placeholder="profile_pic">
<div class="error">
{{error_username}}
</div>
</div>
类传递参数以在用户类中注册函数
class Register(Signup,blobstore_handlers.BlobstoreUploadHandler):
def done(self):
u = User.by_name(self.username)
if u:
msg = 'That user already exists.'
self.render('signup-form.html', error_username = msg)
else:
upload = self.get_uploads()[0]
u = User.register(self.username, self.password, upload.key(), self.email)
u.put()
self.login(u)
self.redirect('/blog')
用户模型。
传递参数profile_pic并将profile_pic分配给用户实体中的列profile_pic
class User(db.Model):
name = db.StringProperty(required = True)
pw_hash = db.StringProperty(required = True)
email = db.StringProperty()
profile_pic = db.BlobProperty()
@classmethod
def by_id(cls, uid):
return User.get_by_id(uid, parent = users_key())
@classmethod
def by_name(cls, name):
u = User.all().filter('name =', name).get()
return u
@classmethod
def register(cls, name, pw, profile_pic, email = None):
pw_hash = make_pw_hash(name, pw)
return User(parent = users_key(),
name = name,
pw_hash = pw_hash,
profile_pic = profile_pic,
email = email)
@classmethod
def login(cls, name, pw):
u = cls.by_name(name)
if u and valid_pw(name, pw, u.pw_hash):
return u
使用
blobstore。创建上传url
必须通过从appengine后端获取的表单参数设置上载url,并将其传递到表单标记:
self.render('page',form_url=blobstore.create_upload_url('/upload'
您收到的错误是什么?你想把照片上传到哪里?在谷歌云存储服务中?您需要提供有关应用程序的更多上下文信息。问题太广泛,请更具体一些基本:很抱歉延迟,选择相关代码和格式需要时间。您的错误似乎是
索引器:列表索引超出范围upload=self.get\u uploads()[0]
。因此列表中可能没有任何元素。在尝试访问索引0
中的元素之前,请检查其长度@voscausa提供的博客条目是否有助于解决此问题?@tudomi如何检查?我不熟悉该列表,在这方面也不太好…@voscausa我需要在jinja 2模板中显示该照片,我们需要将该照片存储在该链接中未显示的列中…我对此非常业余,因此请您指导。。。
self.render('page',form_url=blobstore.create_upload_url('/upload'