Maison > base de données > tutoriel mysql > le corps du texte

Comment développer un système simple de questions et réponses en ligne à l'aide de MySQL et Python

WBOY
Libérer: 2023-09-20 14:34:49
original
1085 Les gens l'ont consulté

Comment développer un système simple de questions et réponses en ligne à laide de MySQL et Python

Comment utiliser MySQL et Python pour développer un système simple de questions et réponses en ligne

Ces dernières années, avec le développement rapide d'Internet, la technologie intelligente a progressivement été largement utilisée dans divers domaines. En tant qu'un des moyens importants d'interaction homme-machine, le système de questions et réponses en ligne a attiré l'attention et a été utilisé par de plus en plus de personnes. Cet article expliquera comment utiliser MySQL et Python pour développer un système simple de questions et réponses en ligne et fournira des exemples de code spécifiques.

1. Configuration de l'environnement
Avant le développement, nous devons effectuer une configuration de l'environnement. Tout d’abord, vous devez installer la base de données MySQL et créer une base de données pour stocker les informations sur les questions et réponses. Deuxièmement, vous devez installer la bibliothèque MySQL de Python pour connecter et faire fonctionner la base de données MySQL. Enfin, nous devons également installer la bibliothèque Python Flask pour développer des applications Web.

2. Conception de la base de données
Avant de commencer à écrire du code, nous devons concevoir une structure de base de données appropriée pour stocker les informations sur les questions et réponses. Un système simple de questions et réponses contient au moins deux tables : une pour stocker les informations sur les questions et une pour stocker les informations sur les réponses. Voici un exemple simplifié de conception de structure de base de données :

  1. Table de questions (questions) :

    • id : ID de la question
    • title : titre de la question
    • content : contenu de la question
    • create_time : heure de création de la question
  2. Tableau de réponses (réponses) :

    • id : ID de réponse
    • question_id : ID de question
    • content : contenu de la réponse
    • create_time : heure de création de la réponse

3. Implémentation du code
Ensuite, nous commençons à écrire du code. un simple système de questions et réponses en ligne. Tout d'abord, nous devons importer les bibliothèques nécessaires et établir une connexion à la base de données :

import mysql.connector
from flask import Flask, request, jsonify

app = Flask(__name__)

# 连接MySQL数据库
db = mysql.connector.connect(
    host="localhost",
    user="root",
    password="123456",
    database="qa_system"
)
Copier après la connexion

Ensuite, nous créons une interface pour obtenir une liste de questions :

@app.route("/questions", methods=["GET"])
def get_questions():
    cursor = db.cursor()
    cursor.execute("SELECT * FROM questions")
    questions = cursor.fetchall()

    results = []
    for row in questions:
        question = {
            "id": row[0],
            "title": row[1],
            "content": row[2],
            "create_time": row[3]
        }
        results.append(question)

    return jsonify(results)
Copier après la connexion

Ensuite, nous créons une interface pour poster des questions :

@app.route("/questions", methods=["POST"])
def create_question():
    data = request.json
    title = data["title"]
    content = data["content"]

    cursor = db.cursor()
    cursor.execute("INSERT INTO questions (title, content) VALUES (%s, %s)", (title, content))
    db.commit()

    return jsonify({"message": "Question created"})
Copier après la connexion

Enfin, nous créer une interface pour obtenir une liste de réponses à une question spécifiée :

@app.route("/questions/<int:question_id>/answers", methods=["GET"])
def get_answers(question_id):
    cursor = db.cursor()
    cursor.execute("SELECT * FROM answers WHERE question_id = %s", (question_id,))
    answers = cursor.fetchall()

    results = []
    for row in answers:
        answer = {
            "id": row[0],
            "question_id": row[1],
            "content": row[2],
            "create_time": row[3]
        }
        results.append(answer)

    return jsonify(results)
Copier après la connexion

4. Exécuter le test
Après avoir écrit le code, nous pouvons exécuter le test pour vérifier si le système fonctionne correctement. Tout d'abord, nous devons démarrer l'application Flask :

if __name__ == "__main__":
    app.run()
Copier après la connexion

Ensuite, nous pouvons utiliser des outils tels que Postman pour tester l'interface que nous avons créée. Par exemple, vous pouvez utiliser la méthode GET pour demander à l'interface /questions接口获取问题列表,使用POST方法请求/questions接口发布问题,使用GET方法请求/questions/<question_id>/answers</question_id> d'obtenir une liste de réponses à une question spécifiée.

Grâce aux étapes ci-dessus, nous avons développé avec succès un système simple de questions et réponses en ligne utilisant MySQL et Python.

Résumé
Cet article explique comment utiliser MySQL et Python pour développer un système simple de questions et réponses en ligne, et fournit des exemples de code spécifiques. Bien sûr, il ne s'agit que d'un exemple simple, et le système actuel de questions et réponses en ligne comporte encore de nombreuses fonctions et détails qui doivent être pris en compte et améliorés. J'espère que cet article sera utile aux personnes qui débutent dans le développement de systèmes de questions et réponses en ligne et pourra être utilisé comme point de départ pour un travail de développement plus complexe et plus complet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!