From 03bcc43af1ad9f5213a9d8ed96692095c334cc45 Mon Sep 17 00:00:00 2001
From: Harry Hughes <hugheshi@cardiff.ac.uk>
Date: Sun, 29 Jan 2023 14:55:29 +0000
Subject: [PATCH] Replace models.py

---
 blog/models.py | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/blog/models.py b/blog/models.py
index 9c1fc7a..9ad119f 100644
--- a/blog/models.py
+++ b/blog/models.py
@@ -16,13 +16,25 @@ class Post(db.Model):
 class User(UserMixin,db.Model):
   id = db.Column(db.Integer, primary_key=True)
   username = db.Column(db.String(15), unique=True, nullable=False)
-  password=db.Column(db.String(128))
+  password_hash=db.Column(db.String(128))
   post = db.relationship('Post', backref='user', lazy=True)
   is_admin=db.Column(db.Boolean,nullable=False,default=False)
   email=db.Column(db.String(256), unique=True)
 
   def __repr__(self):
     return f"User('{self.username}')"
+  
+  #adapted from Grinberg(2014, 2018)
+  @property
+  def password(self):
+    raise AttributeError('Password is not readable.')
+
+  @password.setter
+  def password(self,password):
+    self.password_hash=generate_password_hash(password)
+
+  def verify_password(self,password):
+    return check_password_hash(self.password_hash,password)
 
 class Portfolio(db.Model):
   id = db.Column(db.Integer, primary_key=True)
@@ -33,17 +45,7 @@ class Portfolio(db.Model):
   technologies = db.Column(db.String(255))
   link = db.Column(db.String(255))
 
-#adapted from Grinberg(2014, 2018)
-  @property
-  def password(self):
-    raise AttributeError('Password is not readable.')
 
-  @password.setter
-  def password(self,password):
-    self.password=generate_password_hash(password)
-
-  def verify_password(self,password):
-    return check_password_hash(self.password,password)
 
 @login_manager.user_loader
 def load_user(user_id):
-- 
GitLab