【簡說Python WEB】檢視函式操作資料庫
阿新 • • 發佈:2020-03-22
[toc]
系統環境:`Ubuntu 18.04.1 LTS`
Python使用的是虛擬環境:`virutalenv`
Python的版本:`Python 3.6.9`
## 【簡說Python WEB】檢視函式操作資料庫
`app.py`我們需要把5-a中用到了資料庫操作,加入到如下程式碼:
```python
@app.route('/', methods=['GET', 'POST'])
def index():
form = NameForm()
if form.validate_on_submit():
user = User.query.filter_by(username=form.name.data).first()
if user is None:
user = User(username=form.name.data)
db.session.add(user)
db.session.commit()
session['known'] = False
else :
session['known'] = True
session['name'] = form.name.data
form.name.data = ''
return redirect(url_for('index'))
return render_template('index.html', form=form, name=session.get('name'),known =session.get('known',False))
```
首先,我們會在資料庫查詢是否有這個人。如果沒有的話,會插入這個username。然後下次,再次執行同樣的使用者名稱的話。會提示`非常高興,再一次見到您`
`index.hmtl`需要修改模板內容,如下:
```
{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block title %}zsdblog{% endblock %}
{% block content %}
select * from users;
+----+----------+---------+
| id | username | role_id |
+----+----------+---------+
| 2 | 胡軻 | 2 |
| 3 | 小黃 | NULL |
| 4 | 小明 | NULL |
+----+----------+---------+
3 rows in set (0.00 sec)
```
第二次,輸入使用者名稱:`小明`。發現數據庫裡已經有了。
![](https://img2020.cnblogs.com/blog/1398629/202003/1398629-20200322150348852-151924
您好, {% if name %}{{ name }}{% else %}遊客{% endif %},歡迎來到我的部落格!
{% if not known %}很高興見到你
{% else %}非常高興,再一次見到您
{% endif %} {{ wtf.quick_form(form) }} {% endblock %} ``` 演示效果: 第一次沒有任何資料,顯示為`遊客`。 ![](https://img2020.cnblogs.com/blog/1398629/202003/1398629-20200322150024850-248479336.png) 第一次,輸入使用者名稱:`小明`。 ![](https://img2020.cnblogs.com/blog/1398629/202003/1398629-20200322150140827-1882265998.png) MySQL資料庫插入了一個新的資料。 ```sql mysql>