다른 사람이 사진을 업로드 할 때 (성공적으로) 업로드 된 이미지가 표시된 퍼머 링크로 리디렉션되도록하려고합니다. 여기에 내가 지금까지 시도한 것들이있다.Google 앱 엔진 이미지 게재
다음<form method = "post" enctype="multipart/form-data" action = "/newimage">
<input type="text"name="patient_id" value = {{patient_id}} >
<input type="file" name="patient_image">
<input type="submit" style="width: 100px" 1000px value="Submit">
은 'imageanalysis 페이지를 렌더링 할 수
<div>{{imageD.patient_id}}</div>
<div>{{imageD.key()}}
<img src='/{{image_key}}'>
</div>
에 대한 HTML입니다 : 여기
import webapp2
import os
import re
import jinja2
from google.appengine.api import images
from google.appengine.ext import db
template_dir = os.path.join(os.path.dirname(__file__), 'templates')
jinja_env= jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir), autoescape = True, extensions=['jinja2.ext.autoescape'])
PAGE_RE = r'(/(?:[a-zA-Z0-9_-]+/?)*)'
def render_str(template, **params):
t = jinja_env.get_template(template)
return t.render(params)
class BaseHandler(webapp2.RequestHandler):
def render(self, template, **kw):
self.response.out.write(render_str(template, **kw))
def render_str(self, template, **params):
params['user'] = self.user
return render_str(template, **params)
def write(self, *a, **kw):
self.response.out.write(*a, **kw)
class ImageModel(db.Model):
patient_id = db.IntegerProperty(required = True)
patient_image = db.BlobProperty(required = True)
class NewImageHandler(BaseHandler):
def get(self):
self.render('newimage.html')
def post(self):
patient_id = int(self.request.get('patient_id'))
patient_image = self.request.POST.get('patient_image').file.read()
img = str(images.Image(patient_image))
i = ImageModel(patient_id = patient_id, patient_image = db.Blob(img))
i.put()
self.redirect('imageanalysis/%s' % str(i.key().id()))
class ImageAnalysisHandler(BaseHandler):
def get(self, image_id):
key = db.Key.from_path('ImageModel', int(image_id))
imageD= db.get(key)
self.render('imageAnalysis.html', imageD = imageD, image_key = imageD.key())
app = webapp2.WSGIApplication([
('/newimage', NewImageHandler),
('/imageanalysis/([0-9]+)', ImageAnalysisHandler),
], debug=True)
이 같은'newimage.html '에 대한 내 양식이 모습입니다 patient_id를 표시하지만 이미지를 표시 할 수는 없습니다. 누군가 내가 이미지를 동적으로 제공 할 수있는 방법을 설명 할 수 있습니까? 설명서에서 많은 부분을 시도했지만 작동하지 않습니다.
설명해 주셔서 감사합니다. – piyushg91