我正在尝试创建一个笔记页面,在底部我有一个输入,我可以留下自己要查看的内容的主题,它将发布到输入下方。我对编程很新,我遇到了错误。我想将评论存储在数据存储区中,但我似乎无法让它工作。我收到这个错误:
InternalError:没有这样的表: projectname !!实体
有任何帮助吗?我究竟做错了什么。如果需要,我可以提供我的app.yaml或index.yaml页面。
以下是我的HTML索引模板页面的输入部分:
<form method="post">
<input type="text" name="comment" size="40" style="display: block; margin: 0 auto; text-align:center" >
{% if items %}
{% for item in items %}
<input type="hidden" name="comment" value="{{item}}">
{% endfor %}
{% endif %}
<br>
<button style="display: block; margin: 0 auto;">Add</button>
{% if items %}
<h3 class="idea-name" style="text-align:center">Topics to look into</h3>
<ul>
{% for item in items %}
<li>{{ item }}</li>
{% endfor %}
</ul>
{% endif %}
</form>
这是我的main.py文件:
import jinja2
import webapp2
import os
from google.appengine.ext import ndb
template_dir = os.path.join(os.path.dirname(__file__), 'templates')
jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir), autoescape = True)
class Comment(ndb.Model):
content = ndb.StringProperty()
date = ndb.DateTimeProperty(auto_now_add=True)
class Handler(webapp2.RequestHandler):
def write(self, *a, **kw):
self.response.out.write(*a, **kw)
def render_str(self, template, **params):
t = jinja_env.get_template(template)
return t.render(params)
def render(self, template, **kw):
self.write(self.render_str(template, **kw))
class MainPage(Handler):
def get(self):
query = Comment.query().order(Comment.date)
for comment in query:
content = comment.content
self.response.write('<p>%s</p>' % self.comment.content)
self.render("index.html")
def post(self):
content = self.request.get('content')
comment = Comment(content = content)
comment.put()
import time
time.sleep(.1)
self.redirect('/')
class Unit0Page(Handler):
def get(self):
self.render("unit0.html")
class Unit1Page(Handler):
def get(self):
self.render("unit1.html")
class Unit2Page(Handler):
def get(self):
self.render("unit2.html")
class Unit3Page(Handler):
def get(self):
self.render("unit3.html")
app = webapp2.WSGIApplication([
('/', MainPage),
('/unit0.html', Unit0Page),
('/unit1.html', Unit1Page),
('/unit2.html', Unit2Page),
('/unit3.html', Unit3Page)], debug=True)