Mostrando las entradas con la etiqueta crud python flask. Mostrar todas las entradas
Mostrando las entradas con la etiqueta crud python flask. Mostrar todas las entradas

viernes, 18 de diciembre de 2020

Código Fuente del CRUD Frases Celebres con Python - Flask - Sqlite - Semantic ui

Se anexa el código fuente del ejercicio Crud con Flask y Python 


Archivo app.py:

from flask import Flask, render_template, request, redirect, url_for

from flask_sqlalchemy import SQLAlchemy


app = Flask(__name__)

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///db.sqlite'

app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

db = SQLAlchemy(app)


class Frase(db.Model):

id=db.Column(db.Integer, primary_key= True)

title=db.Column(db.String(100))

complete=db.Column(db.Boolean)


@app.route('/')

def index():

#listar todos los registros

new_frase = Frase.query.all()


return render_template('index.html', new_frase = new_frase)


@app.route("/add", methods=["POST"])

def add():

#agregar un nuevo registro

title = request.form.get("title")

new_frase = Frase(title=title, complete=False)


db.session.add(new_frase)

db.session.commit()

return redirect (url_for("index"))


@ app.route ("/ update / <int: frase_id>")

def actualizar (frase_id):

#actualiar un registro

frase = Frase.query.filter_by (id = frase_id) .first ()

frase.complete = no frase.complete


db.session.commit ()

return redirect (url_for ("índice"))


@ app.route ("/ eliminar / <int: frase_id>")

def eliminar (frase_id):

#eliminar un registro

frase = Frase.query.filter_by (id = frase_id) .first ()

frase.complete = no frase.complete


db.session.delete (frase)

db.session.commit ()

return redirect (url_for ("índice"))


if __name__ == '__main__':

db.create_all ()

app.run (debug = True)



Codígo del archivo Index.html

<!DOCTYPE html>

<html lang="es">

<head>

<meta charset="utf-8">

<title>Frases Celebres</title>

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css">

<script src="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.js"></script>

</head>

<body>

<div style="margin-top: 30px;" class="ui container">

<h1 class="ui center aligned header">Frases Celebres</h1>

<h2 class="ui center aligned header">Python - Flask - Sqlite - Semantic ui</h2>

<form class="ui form" action="/add" method="POST">

<div class="field">

<!--<label for="title">Frases Celebres</label> -->

<a class="ui orange ribbon label big header" for="title">Frases Celebres</a>

<input type="text" name="title" placeholder="Ingresa tu frase celebre...">

<br>

<button class="ui blue button" type="submit">Agregar</button>

</div>

</form>

{% for frase in new_frase %}

<div class="ui segment">

<p class="ui big header">{{ frase.id }} | {{ frase.title }}</p>

{% if frase.complete == False %}

<span class="ui gray label" >Incompleta</span>

{% else %}

<span class="ui green label">Completa</span>

{% endif %}


<a class="ui blue button" href="/update/{{ frase.id }}">Actualizar</a>

<a class="ui red button" href="/delete/{{ frase.id }}">Eliminar</a>

</div>

{% endfor %}


</div>

</body>

</html>


Puedes seguir el paso a paso en los siguientes videos:


Visita mi canal de youtube para mas contenido:

https://www.youtube.com/c/SilverioDelRosarioFernandezplusSilver

Imágenes para tu página web, tu presentación profesional y más...

Día nublado Hermoso arbol Mundo arácnido  Hermosa naturaleza  Para e...