สอบถาม วิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser
Moderator: mindphp, ผู้ดูแลกระดาน
- jirawoot
- PHP VIP Members
- โพสต์: 3129
- ลงทะเบียนเมื่อ: 17/06/2019 10:30 am
สอบถาม วิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser
ขอวิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser ผมจะทำหน้า login เพื่อจะเข้าไปยังหน้า จัดการข้อมูล user
-
- PHP VIP Members
- โพสต์: 2845
- ลงทะเบียนเมื่อ: 09/07/2018 9:35 am
Re: สอบถาม วิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser
แยกประเด็นก่อนนะครับ
1. configparser คือสำหรับ อ่าน ไฟล์ config ที่เราสร้างขึ้นมา งั้นการใช้ร่วมกันคือ จะเอาค่า มาเช็ค กับ flask_login อารมณ์เดียวกันกับ การเรา query จาก database มาใช้งาน แต่นี่คือการอ่านค่าจะ config
ตัวอย่างเช่น สร้างไฟล์ test.conf มา วิธีสร้างดูจากกระทู้นี้ viewtopic.php?p=157702#p157702
วิธีอ่านค่าด้วย python
ผล
test
1234
2. การใช้งาน flask_login ร่วมกับ configparser
ผมสร้างไฟล์ index.py
login.html
test.html
ผล
ออกจากระบบ แล้วกดกลับ
log in ผิด
1. configparser คือสำหรับ อ่าน ไฟล์ config ที่เราสร้างขึ้นมา งั้นการใช้ร่วมกันคือ จะเอาค่า มาเช็ค กับ flask_login อารมณ์เดียวกันกับ การเรา query จาก database มาใช้งาน แต่นี่คือการอ่านค่าจะ config
ตัวอย่างเช่น สร้างไฟล์ test.conf มา วิธีสร้างดูจากกระทู้นี้ viewtopic.php?p=157702#p157702
โค้ด: เลือกทั้งหมด
[options]
user = test
pwd = 1234
โค้ด: เลือกทั้งหมด
import configparser
config = configparser.ConfigParser()
config.read('test.conf')
test_user = config['options']['user']
pwd = config['options']['pwd']
print user
print pwd
test
1234
2. การใช้งาน flask_login ร่วมกับ configparser
ผมสร้างไฟล์ index.py
โค้ด: เลือกทั้งหมด
#-*- coding=utf-8 -*-
from flask import Flask, flash, render_template ,request ,session, redirect, url_for
import flask_login
from passlib.hash import pbkdf2_sha256
import configparser
config = configparser.ConfigParser()
config.read('test.conf')
test_user = config['options']['user']
pwd = config['options']['pwd']
app = Flask(__name__)
app.secret_key = 'ff938fl//jvl;a93kff9qp@Rifomc'
login_manager = flask_login.LoginManager()
login_manager.init_app(app)
users = {test_user: {'password': pwd}}
hash_p = pbkdf2_sha256.hash(users[test_user]['password'])
class User(flask_login.UserMixin):
pass
@login_manager.user_loader
def user_loader(email):
if email not in users:
return
user = User()
user.id = email
return user
@login_manager.request_loader
def request_loader(request):
email = request.form.get('email')
if email not in users:
return
user = User()
user.id = email
if pbkdf2_sha256.verify(request.form['password'], hash_p):
user.is_authenticated
else :
pass
return user
@app.route('/')
def index():
return render_template("login.html")
@app.route('/login',methods=['GET', 'POST'])
def login():
email = request.form['email']
if request.form['email'] in users:
if pbkdf2_sha256.verify(request.form['password'], hash_p):
user = User()
user.id = email
flask_login.login_user(user)
flash('You were successfully logged in')
return redirect(url_for('config'))
else:
flash('Wrong Username or Password. Try Again')
return render_template('login.html')
else:
flash('Wrong Username or Password. Try Again')
return render_template('login.html')
@app.route('/config')
@flask_login.login_required
def config():
return render_template('test.html', login=flask_login.current_user.id)
@app.route('/logout')
def logout():
flask_login.logout_user()
return render_template('login.html')
if __name__ == '__main__':
app.run(debug=True)
โค้ด: เลือกทั้งหมด
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
<form method="post" action="">
<input type="hidden" name="csrf_token" value="{{ csrf_token }}" />
</form>
{% with messages = get_flashed_messages() %}
{% if messages %}
<ul class=flashes>
{% for message in messages %}
<li>{{ message }}</li>
{% endfor %}
</ul>
{% endif %}
{% endwith %}
<div class="login">
<div class="login-screen">
<div class="app-title">
<h1>Login</h1>
</div>
<div class="login-form">
<form class="login-form" action="\login" method="POST">
<div class="control-group">
<input type="text" class="login-field" value="" placeholder="username" name="email" id="login-name">
<label class="login-field-icon fui-user" for="login-name"></label>
</div>
<div class="control-group">
<input type="password" class="login-field" name="password" placeholder="password" id="login-pass">
<label class="login-field-icon fui-lock" for="login-pass"></label>
</div>
<input class="btn" type="submit" name="submit" value="Login"/>
</form>
</div>
</div>
</div>
</body>
</html>
โค้ด: เลือกทั้งหมด
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{% with messages = get_flashed_messages() %}
{% if messages %}
{% for message in messages %}
<div class="w3-panel w3-green w3-display-container">
<span onclick="this.parentElement.style.display='none'"
class="w3-button w3-green w3-large w3-display-topright">×</span>
<h3>{{ messages[0] }}!</h3>
<p>Login as : {{ login }}</p>
</div>
{% endfor %}
{% endif %}
{% endwith %}
<a href="/logout">ออก</a>
</body>
</html>
ออกจากระบบ แล้วกดกลับ
log in ผิด
Re: สอบถาม วิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser
แจ่มเลยมีโค้ดตัวอย่าง ให้ก๊อบด้วย มี VDO สอนเพิ่มไหมมั๊ยครับ พวกเกี่ยวกับระบบล๊อกอินต่อ บทความก็ได้
-
- Similar Topics
- ตอบกลับ
- แสดง
- โพสต์ล่าสุด
-
-
โพสต์ใหม่ การใช้ flask framework ในภาษา python
โดย jirawoot » 26/06/2019 3:54 pm » ใน Python Knowledge - 0 ตอบกลับ
- 2037 แสดง
-
โพสต์ล่าสุด โดย jirawoot
26/06/2019 3:54 pm
-
-
-
โพสต์ใหม่ การใช้ flask python ในการลบ row ข้อมูลออกจาก database
โดย ewqolf » 17/01/2023 6:27 pm » ใน Python Knowledge - 0 ตอบกลับ
- 792 แสดง
-
โพสต์ล่าสุด โดย ewqolf
17/01/2023 6:27 pm
-
-
-
โพสต์ใหม่ การใช้ flask python ในการทำการ join table ข้อมูลออกมาแสดง
โดย ewqolf » 18/01/2023 7:43 pm » ใน Python Knowledge - 0 ตอบกลับ
- 4716 แสดง
-
โพสต์ล่าสุด โดย ewqolf
18/01/2023 7:43 pm
-
-
-
โพสต์ใหม่ การใช้ ฟังก์ชั่น url_for() ใช้สำหรับการ route ไปยังฟังก์ชั่นที่อยู่ในโปรแกรม ของ Flask
โดย jirawoot » 06/07/2019 5:58 pm » ใน Python Knowledge - 0 ตอบกลับ
- 1176 แสดง
-
โพสต์ล่าสุด โดย jirawoot
06/07/2019 5:58 pm
-
-
-
โพสต์ใหม่ สอบถาม code ของ Flask หน่อยครับว่ามันเอาไว้ใช้ทำอะไร
โดย benzas00123 » 14/01/2020 4:50 pm » ใน Programming - C/C++ & java & Python - 3 ตอบกลับ
- 703 แสดง
-
โพสต์ล่าสุด โดย mindphp
15/01/2020 5:54 am
-
-
-
โพสต์ใหม่ การใช้งาน Session ในการทำหน้า Login ใน Flask Frame
โดย ewqolf » 25/11/2022 1:38 pm » ใน Python Knowledge - 0 ตอบกลับ
- 778 แสดง
-
โพสต์ล่าสุด โดย ewqolf
25/11/2022 1:38 pm
-
-
-
โพสต์ใหม่ สอบถาม ติดตั้ง flask แล้ว erorr ต้องอย่างไรครับ
โดย jirawoot » 15/08/2019 11:12 am » ใน Programming - C/C++ & java & Python - 3 ตอบกลับ
- 789 แสดง
-
โพสต์ล่าสุด โดย jirawoot
15/08/2019 1:13 pm
-
-
-
โพสต์ใหม่ การใช้งาน flask session ใช้งานอย่างไร ทำหน้า Login อย่างง่ายด้วย Python
โดย jirawoot » 11/07/2019 5:40 pm » ใน Programming - C/C++ & java & Python - 0 ตอบกลับ
- 2144 แสดง
-
โพสต์ล่าสุด โดย jirawoot
11/07/2019 5:40 pm
-
ผู้ใช้งานขณะนี้
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 51