首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >google应用引擎django表单pyamf

google应用引擎django表单pyamf
EN

Stack Overflow用户
提问于 2010-11-08 12:03:06
回答 1查看 236关注 0票数 0

我的闪光灯很好用。现在,我想通过遵循google教程创建一个经典的Django表单:http://code.google.com/appengine/articles/djangoforms.html,但是当我在表单中发布输入的数据时,我从pyamf获得以下消息:

畸形流(amfVersion=110)

400坏请求-请求体无法成功解码。

回溯:

回溯(最近一次调用):

文件"C:\Users\Giil\Documents\dev\gae\moviesbuilder\pyamf\remoting\gateway\google.py",第79行,在post logger=self.logger,timezone_offset=timezone_offset中)

文件"C:\Users\Giil\Documents\dev\gae\moviesbuilder\pyamf\remoting_init_.py",第640行,在解码msg.amfVersion中) DecodeError:畸形流(amfVersion=110)畸形流(amfVersion=110)

这对我来说很有意义,因为我从表格上发送的不是amf。我该怎么处理呢?

注意:我觉得问题来自于我的app.yaml,我没有特殊的处理程序来告诉应用程序处理这个表单differently...Malformed流(amfVersion=110)。

EN

回答 1

Stack Overflow用户

发布于 2010-11-13 14:59:48

我用自己的方式解决了问题:

我的表单(文章是针对另一个函数的,而不仅仅是google示例中的"/“):

代码语言:javascript
复制
class Projects(webapp.RequestHandler):
    def get(self):
        self.response.out.write('<html><body>'
                                '<form method="POST" '
                                'action="/ProjectsPage">'
                                '<table>')
        self.response.out.write(ProjectForm())
        self.response.out.write('</table>'
                                '<input type="submit">'
                                '</form></body></html>')

然后我需要写到dataStore并显示列表:

代码语言:javascript
复制
class ProjectsPage(webapp.RequestHandler):
     #getting data and saving
     def post(self):
        data = ProjectForm(data=self.request.POST)
        if data.is_valid():
            # Save the data, and redirect to the view page
            entity = data.save(commit=False)
            entity.added_by = users.get_current_user()
            entity.put()
            self.redirect('/projects.html')
        else:
            # Reprint the form
            self.response.out.write('<html><body>'
                                    '<form method="POST" '
                                    'action="/">'
                                    '<table>')
            self.response.out.write(data)
            self.response.out.write('</table>'
                                    '<input type="submit">'
                                    '</form></body></html>')
    #display list of projects
    def get(self):
        query = db.GqlQuery("SELECT * FROM Project WHERE added_by=:1 ORDER BY name",users.get_current_user())
        template_values = {
            'projects': query,
        }
        path = os.path.join(os.path.dirname(__file__), 'templates/projects.html')
        self.response.out.write(template.render(path, template_values))   
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4123632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档