PYTHON – ПОДКЛЮЧЕНИЕ FLASK MYSQL
Если вы следовали за моим предыдущий руководство Веб-сервисы Python с использованием Flask вы должны знать, как создавать свои собственные службы REST, ПОЛУЧАТЬ и отправлять данные.
В ЭТОМ РУКОВОДСТВЕ МЫ УЗНАЕМ, КАК ПОДКЛЮЧИТЬ FLASK К БАЗЕ ДАННЫХ MySQL, И ВЫ МОЖЕТЕ ВСТАВИТЬ ДАННЫЕ ФОРМЫ.
Этот учебник полностью создан для новичков, поэтому предварительным условием этого урока будет минимум единственной вещи, которую я лично рекомендую, чтобы иметь обзор высокого уровня. Веб-сервисы Python с использованием Flask и иметь минимальное понимание настройки SQL и базы данных.
Для начала вам понадобится любая IDE, я буду использовать PyCharm, MySQL DB и все!!! Этот урок, в отличие от моих предыдущих постов, будет пошагово объяснять, что и как делать….
- Откройте PyCharm, создайте новый файл Python с именем app.python и введите приведенный ниже код в файл app.python.
from flask import Flask
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
return "Hello Nuclear Geeks"
if __name__ == '__main__':
app.run()
Если вы прошли через Веб-сервисы Python с использованием Flask вы бы поняли 100% приведенного выше кода. Просто мы отправляем запрос и отображаем «Hello Nuclear Geeks». При запуске следующей программы введите в браузере, чтобы увидеть результат!! «Привет ядерщики»
Теперь вам нужно создать простую HTML-страницу с двумя текстовыми полями: Имя, Фамилия и кнопка отправки. Для этого создайте папку с именем Templates, внутри нее создайте файл index.html и скопируйте приведенный ниже код.
<HTML>
<BODY bgcolor="cyan">
<form method="POST" action="">
<center>
<H1>Enter your details </H1> <br>
First Name <input type = "text" name= "fname" /> <br>
Last Name <input type = "text" name = "lname" /> <br>
<input type = "submit">
</center>
</form>
</BODY>
</HTML>
- Измените наш файл app.python и добавьте в него приведенный ниже код.
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run()
- После запуска приведенного выше кода вы должны получить страницу, как показано ниже.
- Итак, мы разработали нашу форму, следующим шагом будет подключение к базе данных. Чтобы создать таблицу, используйте следующий запрос:
CREATE TABLE MyUsers ( firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL);
- Приведенный выше запрос создаст в базе данных таблицу с именем MyUsers, теперь скопируйте следующий код и вставьте в файл app.python.
from flask import Flask, render_template, request
from flask_mysqldb import MySQL
app = Flask(__name__)
app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_USER'] = 'root'
app.config['MYSQL_PASSWORD'] = 'root'
app.config['MYSQL_DB'] = 'MyDB'
mysql = MySQL(app)
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == "POST":
details = request.form
firstName = details['fname']
lastName = details['lname']
cur = mysql.connection.cursor()
cur.execute("INSERT INTO MyUsers(firstName, lastName) VALUES (%s, %s)", (firstName, lastName))
mysql.connection.commit()
cur.close()
return 'success'
return render_template('index.html')
if __name__ == '__main__':
app.run()
- До сих пор легко!!!
app.config[‘MYSQL_HOST’] = ‘локальный хост’
app.config[‘MYSQL_USER’] = ‘корень’
app.config[‘MYSQL_PASSWORD’] = ‘корень’
app.config[‘MYSQL_DB’] = ‘Моя БД’
Эти строки представляют собой конфигурацию базы данных, необходимую для нашего Flask, следующая строка «mysql = MySQL (приложение)» создает экземпляр, который предоставит нам доступ.
Строки ‘firstName = детали[‘fname’]’ и ‘фамилия = детали[‘lname’]’ извлекает введенное значение в форме HTML.
Установление соединения выполняется с помощью ‘cur = mysql.connection.cursor()’, а выполнение запроса с помощью ‘cur.execute(«INSERT INTO MyUsers(firstName, lastName) VALUES (%s, %s)», (firstName, lastName ))’
- Тяжелое дыхание!!! мы все готовы бежать…. Запустите программу, введите Имя = «Адитья» и Фамилия = «Мальвия» и нажмите «Отправить». Вы увидите, что на экране возвращается успех.
Вы можете проверить полный пост здесь Соединение Python Flask с Mysql
Вы также можете обратиться ко всем моим сообщениям здесь
Или вы можете проверить их по отдельности, а также
Быстрые делегаты и протоколы
Введение в полный стек Python
[Introduction to Automation Testing]
Типы данных в Python
Жизненный цикл приложения iOS
Идентификаторы Python и зарезервированные ключевые слова