Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

223
Visualizações
Flask evita que los usuarios hagan nuevas publicaciones por spam

Estoy tratando de hacer una aplicación de frasco donde te registras y puedes hacer nuevas publicaciones. Pero quiero que si el usuario ha realizado más de 3 publicaciones en menos de 10 minutos, debe esperar 5 minutos. Aquí está el código:

 allpos = [] @app.route('/makepost',methods=['POST','GET']) def makepost(): print(allpos) sear = 1 oldtime = time.time() if len(allpos) == 3: currenttime = time.time() if currenttime - oldtime > 300: allpos.clear() return render_template('posts.html') else: return render_template('wait.html') if not current_user.is_authenticated: return redirect('/login') if request.method == 'POST': global title global content title = request.form['title'] content = request.form['content'] if len(title) < 5: flash("Title must be at least 5") if len(title) > 50: flash("Title must be 50 characters max") if len(content) < 5: flash('Content must be at least 5 letters') if len(title) > 5 and len(title) < 50 and len(content) > 5: sear = 2 if sear == 2: global post1 post1 = Post(title=title,content=content,name=current_user.name,author=current_user.id) db.session.add(post1) db.session.commit() allpos.append('1') if sear != 2: flash('We couldnt make your post') return render_template('posts.html')

Quiero evitar que el usuario haga publicaciones en este sentido:

 oldtime = time.time() if len(allpos) == 1: currenttime = time.time() if currenttime - oldtime > 0: print('asdasd') allpos.clear() return render_template('posts.html') else: return render_template('wait.html')

Pero el tiempo pasa y sigue impidiendo al usuario. Además, cuando el usuario va a otra página, el tiempo se reinicia. Mi principal problema es que impide que el usuario haga publicaciones. También uso SQLAlchemy.

Aquí está el usuario y el modelo de publicación:

 class Users(UserMixin,db.Model): id = db.Column(db.Integer,primary_key=True) name = db.Column(db.String(200),unique=True,nullable=False) password = db.Column(db.String(200),unique=False,nullable=False) role = db.Column(db.String(200),unique=False,nullable=False) missions = db.Column(db.String(200),unique=False,nullable=False) posts = db.relationship('Post',backref='user') class Post(db.Model): id = db.Column(db.Integer,primary_key=True) title = db.Column(db.String(200),unique=False,nullable=False) content = db.Column(db.Text,unique=False,nullable=False) name = db.Column(db.String(200),unique=False,nullable=False) author = db.Column(db.Integer,db.ForeignKey('users.id'),unique=False)

Por favor dame una respuesta.

Gracias.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda