gpt4 book ai didi

python - 如何打印键redis的所有值

转载 作者:可可西里 更新时间:2023-11-01 11:46:14 26 4
gpt4 key购买 nike

我正在学习尝试学习 python flask + redis,然后我正在做一个基本的应用程序,我可以在其中提出一个问题和答案,然后有人可以给我一个问题的答案,然后工作,但我希望打印解决所有问题,但我不明白,尝试制作一个 for 循环但它不起作用然后我尝试使用 r.lrange 但它对我不起作用,也许有人可以解释如何它的工作,看这是我的Router.py

r = redis.StrictRedis(host='localhost',port=6379,db=0, charset="utf-8", decode_responses=True);

# Alternativas
# r = redis.StrictRedis();
# r = redis.StrictRedis('localhost',6379,0);

# Server/
@app.route('/')
def hello():
crearLink = "<a href='" + url_for('crear') + "'>Hacer una pregunta</a>";
return """<html>
<head>
<title>Hola, Mundo!</title>
</head>
<body>
""" + crearLink +"""
</body>
</html>""";


# Server/crear
@app.route('/crear', methods=['GET', 'POST'])
def crear():
if request.method == 'GET':
# enviar el formulario al usuario
return render_template('CreateQuestion.html');
elif request.method == 'POST':
# leer la informacion del form y guardarla
titulo = request.form['titulo'];
pregunta = request.form['pregunta'];
respuesta = request.form['respuesta'];

# Guardar informacion
# Key name

r.set(titulo +':pregunta', pregunta);
r.set(titulo +':respuesta', respuesta);

return render_template('CreatedQuestion.html', pregunta = pregunta);
else:
return "<h2>Error</h2>";
def preguntas():
preguntass = r.lrange('pregunta','0','4')
print preguntass;

# server/pregunta/<title>
@app.route('/pregunta/<titulo>', methods=['GET', 'POST'])
def pregunta(titulo):
if request.method == 'GET':
# Leer la pregunta de la base de datos
pregunta = r.get(titulo+':pregunta')
return render_template('AnswerQuestion.html', pregunta = pregunta);
elif request.method == 'POST':
submittedAnswer = request.form['submittedAnswer'];
if submittedAnswer == '':
return "No ingresastes ninguna clase de informacion para validar.";
respuesta = r.get(titulo+':respuesta')
if submittedAnswer == respuesta:
return render_template('Correct.html');
else:
return render_template('Incorrect.html', submittedAnswer = submittedAnswer, respuesta = respuesta);
else:
return '<h2>Error</h2>';

最佳答案

您可以使用r.keys() 获取当前redis 数据库中所有键的列表。r.keys() 还采用可选模式来匹配键。

所以你可以使用r.keys("*:pregunta")来匹配所有的问题。

另外,行尾的分号是完全没有必要的。

关于python - 如何打印键redis的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35517808/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com