chopin42 4 лет назад
Родитель
Сommit
48031381ce
4 измененных файлов с 84 добавлено и 0 удалено
  1. BIN
      __pycache__/helper.cpython-38.pyc
  2. BIN
      __pycache__/login.cpython-38.pyc
  3. BIN
      data.db
  4. 84 0
      login.md

BIN
__pycache__/helper.cpython-38.pyc


BIN
__pycache__/login.cpython-38.pyc



+ 84 - 0
login.md

@@ -0,0 +1,84 @@
+# Login.py
+
+Login.py is a simple library for Flask that makes you able to handle login easily without getting plenty of useless lines of code.
+
+## Installation
+
+SOON
+
+## Usage
+
+You can find the full demo of login.py [here](./login-ex.py). You can also find the source code of login.py [here](./login.py).
+
+### initLogin(app, db)
+
+This function is used to create the `User` class. Having this function is necessary for the rest of the program. Without this, the Users cannot get stored into the database.
+
+```python
+from flask import Flask, request
+from flask_login import UserMixin
+from flask_sqlalchemy import SQLAlchemy
+from login import *
+
+# Create the "app" and "db" variables
+app = Flask(__name__)
+app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///database.db'
+app.config['SECRET_KEY'] = 'aghzi vnguierhtrutizo hard to guess indeeed'
+db = SQLAlchemy(app)
+
+# Create the User class and add it to the database
+User = initLogin(app, db)
+db.create_all()
+```
+
+### createUser(username, password, db, User)
+
+This function is used to sign up a new user into the database. This is an example of usage:
+
+```python
+@app.route('/register/post', methods=['POST'])
+def register():
+    try:
+        createUser(request.form['username'], request.form['password'], db, User)
+        return "New user created you are now logged in as " + current_user.username
+    except: 
+    		return "This username is already taken"
+```
+
+### loginUser(username, password, User)
+
+This function is used to login a user, that means that the user must already be in the database.
+
+```python
+@app.route('/login/post', methods=['POST'])
+def login():
+    try:
+        loginUser(request.form['username'], request.form['password'], User)
+        return "You are now logged in as " + current_user.username
+    except: 
+    		return "Invalid username or password"
+```
+
+
+### logout_user()
+
+This is not a function from login.py, but a function from flask_login. The usage of this function is very simple:
+
+```python
+@app.route('/logout')
+def logout(): 
+    logout_user()
+    return "You are now logged out."
+```
+
+### @login_required
+
+When you add this line under a url route, it locks the page to the logged in users. The users that are not logged will have a `Unauthorized` error showing up.
+
+```python
+
+@app.route('/locked')
+@login_required # Using login_required to make a page private
+def locked(): 
+	return "Hello " + current_user.username + " welcome to your private page."
+```