Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. import psycopg2
  2.  
  3. from flask import Flask, render_template, request
  4. from psycopg2.extras import RealDictCursor
  5.  
  6. def connect():
  7. return psycopg2.connect("host=localhos")
  8.  
  9. class Item:
  10. def __init__(self, id, ver, manu, make, model, date):
  11. self.id = id
  12. self.ver = ver
  13. self.manu = manu
  14. self.model = model
  15. self.date = date
  16. class ItemDatabase:
  17. def __init__(self, conn):
  18. self.conn = conn
  19.  
  20. def push(self):
  21. query = """
  22. INSERT INTO pg_equipment(ver, manu, model) VALUES(
  23. %(ver)s,
  24. %(make)s,
  25. %(model)s
  26. )
  27. """
  28. curs = self.conn.cursor(cursor_factory=RealDictCursor)
  29. curs.execute(query)
  30.  
  31. def pull(self, ver=None, manu=None, make=None, model=None):
  32. query = """SELECT * from pg_equipment"""
  33. curs = self.conn.cursor(cursor_factory=RealDictCursor)
  34. curs.execute(
  35. query,
  36. dict(
  37. ver=ver,
  38. manu=manu,
  39. model=model,
  40. ))
  41. row = curs.fetchall()
  42. if row:
  43. return Item(row)
  44. return None
  45.  
  46. app = Flask(__name__)
  47.  
  48. @app.route('/', methods=["GET", "POST"])
  49. def home():
  50. if request.form:
  51. conn = connect()
  52. item = ItemDatabase(conn).push(request.form)
  53. conn.commit()
  54. return render_template("input.html")
  55.  
  56. @app.route('/view', methods=["GET", "POST"])
  57. def view():
  58. conn = connect()
  59. items = ItemDatabase(conn).pull()
  60. conn.commit()
  61. return render_template("view.html", items=items)
  62.  
  63.  
  64. if __name__ == "__main__":
  65. app.run(debug=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement