MySQL と Python を使用して簡単なオンライン質問応答システムを開発する方法
近年、インターネットの急速な発展に伴い、インテリジェント テクノロジーが徐々に普及してきました。さまざまな分野で広く使用されています。人間とコンピュータの対話の重要な手段の 1 つとして、オンライン質疑応答システムが注目され、ますます多くの人が使用しています。この記事では、MySQL と Python を使用して簡単なオンライン質疑応答システムを開発する方法を紹介し、具体的なコード例を示します。
1. 環境設定
開発の前に、いくつかの環境設定を行う必要があります。まず、MySQL データベースをインストールし、質問と回答の情報を保存するデータベースを作成する必要があります。次に、MySQL データベースに接続して操作するために、Python の MySQL ライブラリをインストールする必要があります。最後に、Web アプリケーションを開発するための Python Flask ライブラリもインストールする必要があります。
2. データベース設計
コードを書き始める前に、質問と回答の情報を保存するための適切なデータベース構造を設計する必要があります。単純な質問と回答のシステムには、少なくとも 2 つのテーブルが含まれています。1 つは質問情報を格納するため、もう 1 つは回答情報を格納するためです。以下は、簡略化されたデータベース構造の設計例です。
質問テーブル (質問):
回答:
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" )
@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)
@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"})
最後に、指定された質問に対する回答のリストを取得するためのインターフェイスを作成します:
@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)
4. テストを実行します
コードを記述した後、システムが適切に動作していることを確認するテスト。まず、Flask アプリケーションを起動する必要があります。if __name__ == "__main__": app.run()
/questions
インターフェイスをリクエストして質問のリストを取得したり、POST メソッドを使用して
インターフェイスに質問を投稿したり、 GET メソッドで /questions/<question_id> をリクエストします。 /answers</question_id>
インターフェイスは、指定された質問に対する回答のリストを取得します。 上記の手順により、MySQL と Python を使用した簡単なオンライン質疑応答システムの開発に成功しました。
概要
以上がMySQL と Python を使用して簡単なオンライン質疑応答システムを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。