小编pay*_*ala的帖子

gae-boilerplate文档

在我为App Engine寻找一个好的社交登录包时,我试试了gae-boilerplate.但我发现除了自述文件之外没有任何文档,我认为这还不够.

我有很多问题,其中包括:

  • 样板是否应该用作库或根据需要下载和修改?
  • 如何更新样板?
  • 每个型号做什么?
  • 我的模板应该放在哪里?
  • 我应该有不同的路线文件吗?
  • 我应该从BaseHandler派生我的处理程序吗?
  • 一般来说,我应该在页面中实现哪些内容?例如,我发现我必须在所有POST请求中包含csrf_token.如果事先知道这件事,以及我必须在整个过程中发现的许多其他事情,并且我在不确定我是否应该这样做的情况下实施,我会很高兴.
  • 还有一些......

我最大的问题是社交登录不起作用,我觉得这个样板是一个大怪物,我不知道从哪里开始.更糟糕的是,很难从任何非生产机器上调试社交身份验证.这就是为什么我拼命寻找一些文档.

我没有找到任何东西,我想在我的情况下肯定会有更多的人.所以,任何有助于理解gae-boilerplate更好一点的文档指针都将非常感激.

编辑:我切换到我之前工作过的网站中的gae-boilerplate.也许我的大部分问题都来自于我试图整合gae-boilerplate和现有网站的方式.因此,我试图将gae-boilerplate视为一个库,并保留我自己的模板,处理程序,静态文件等.

感谢你们!

编辑2:在尝试其他选项后,我不得不说我对gae-simpleauth非常满意.它的效果非常好,Alex的支持非常棒.

google-app-engine boilerplate

5
推荐指数
1
解决办法
1071
查看次数

在appengine中使用反向游标进行分页

我正在尝试前进和后退分页工作我的应用程序上的查询.

我从以下示例开始:https://developers.google.com/appengine/docs/python/ndb/queries#cursors

我希望该示例能够执行典型的前向/后退分页来创建可以传递给模板的游标,以便在当前页面之后/之前的页面的后续请求中使用.但它正在做的是获取同一页面的游标,一个从开始,另一个从最后(如果我已经正确理解).

我想要的是一个光标到下一页的开头,一个光标到上一页的开头,在我的UI中使用.

基于上面提到的示例,我已经设法使用以下代码来实现:

    curs = Cursor(urlsafe=self.request.get('cur'))

    q = MyModel.query(MyModel.usett == usett_key)
    q_forward = q.order(-MyModel.sugerida)
    q_reverse = q.order(MyModel.sugerida)

    ofus, next_curs, more = q_forward.fetch_page(num_items_page,
                                                 start_cursor=curs)

    rev_cursor = curs.reversed()
    ofus1, prev_curs, more1 = q_reverse.fetch_page(num_items_page,
                                                 start_cursor=rev_cursor)

    context = {}

    if more and next_curs:
        context['next_curs'] = next_curs.urlsafe()

    if more1 and prev_curs:
        context['prev_curs'] = prev_curs.reversed().urlsafe()
Run Code Online (Sandbox Code Playgroud)

问题和这个问题的关键在于我使用moremore1查看是否有下一页.而这在后向意义上并不奏效.对于第一页,more1True,在第二页more1False,和后续页面给出True.

我需要False为第一页和True每个其他页面提供的东西.似乎这个more返回值是使用的东西,但也许我有一个错误的查询设置,或任何其他错误.

感谢大家!

编辑:由于我没有找到一个简单的解决方案,我转而使用ndbpager.

google-app-engine app-engine-ndb

5
推荐指数
1
解决办法
1763
查看次数