小编ngu*_*yên的帖子

如何在jinja2模板引擎中保护csrf_token?

在Django模板中,我使用了:

<form action="/user" method="post">{% csrf_token %}
    {{ form.as_p|safe }}
    <input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

但是当我改为jinja2 template engine:

 Encountered unknown tag 'csrf_token'
Run Code Online (Sandbox Code Playgroud)

我的问题:csrf_token protectionjinja2需要?

如果需要,怎么做?

提前致谢!

django csrf jinja2

26
推荐指数
2
解决办法
7967
查看次数

如何声明实现类的java接口字段应该优化该字段

如何声明实现类的java接口字段应该优化该字段?

例如

public interface IWorkflow{
    public static final String EXAMPLE;// interface field 
    public void reject();
}

// and implement class
public class AbstWorkflow implements IWorkflow
{
    public static final String EXAMPLE = "ABCD"; /*MUST HAVE*/
    public void reject(){}
...
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

java interface

9
推荐指数
2
解决办法
1万
查看次数

如何在python列表中循环(倒计时)

如何在python列表中循环?

例如

环:

L = [1,2,3]
for item in L
    print item #-->1,2,3
Run Code Online (Sandbox Code Playgroud)

循环:

L = [1,2,3]
for ???
    print item #-->3,2,1
Run Code Online (Sandbox Code Playgroud)

谢谢

python loops

7
推荐指数
3
解决办法
1万
查看次数

什么设计模式为课堂功能预先做

我的类函数总是需要在此之前做一些事情(Python):

class X:
 def f1():
  #### 
  if check() == False: 
   return;
  set_A()
  ####
  f1_do_something

 def f2():
  #### 
  if check() == False: 
   return;
  set_A()
  ####

  f2_do_something
Run Code Online (Sandbox Code Playgroud)

我想:

class X:
 def f1():
  # auto check-return-set_A()
  f1_do_something

 def f2():
  # auto check-return-set_A() 
  f2_do_something
Run Code Online (Sandbox Code Playgroud)

我已经阅读过设计模式,在这种情况下我不知道如何应用设计模式.如果没有任何合适的设计模式,是否还有其他解决方案?

python design-patterns

2
推荐指数
1
解决办法
99
查看次数

google-app-engine:如何实现用户登录成功事件

我在python语言中使用google-app-engine,我想在用户登录成功事件时做点什么.

例如

def onlogin_success():
  user = users.get_current_user()
  log('user login %s' + user.nickname())
Run Code Online (Sandbox Code Playgroud)

谢谢

events google-app-engine web-applications

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

GAE-NDB:如何防止投影改变结果

我使用ndb投影,但确实改变了结果,结果如何不受投影的影响?

class T(ndb.Model):
  name = ndb.StringProperty()  
  name2 = ndb.StringProperty(repeated=True)

  @classmethod
  def test(cls):
    for i in range(0, 10):
      t = T(name=str(i))
      if i%2 == 0:
        t.name2=["zzz"]      
      t.put()

    qr = T.query()
    qo = ndb.QueryOptions(projection=['name', 'name2'])
    items, cursor, more = qr.fetch_page(20, options=qo)
    print len(items)

    qo = ndb.QueryOptions(projection=['name'])
    items, cursor, more = qr.fetch_page(20, options=qo)
    print len(items)
Run Code Online (Sandbox Code Playgroud)

结果是5,10

如何使结果是10,10?

谢谢

google-app-engine app-engine-ndb

0
推荐指数
1
解决办法
171
查看次数