Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk membangunkan sistem soal jawab dalam talian yang mudah menggunakan MySQL dan Python

Bagaimana untuk membangunkan sistem soal jawab dalam talian yang mudah menggunakan MySQL dan Python

WBOY
WBOYasal
2023-09-20 14:34:491107semak imbas

Bagaimana untuk membangunkan sistem soal jawab dalam talian yang mudah menggunakan MySQL dan Python

Cara menggunakan MySQL dan Python untuk membangunkan sistem soal jawab dalam talian yang mudah

Dalam beberapa tahun kebelakangan ini, dengan perkembangan pesat Internet, teknologi pintar secara beransur-ansur telah digunakan secara meluas dalam pelbagai bidang. Sebagai salah satu cara penting interaksi manusia-komputer, sistem soal jawab dalam talian telah diberi perhatian dan digunakan oleh lebih ramai orang. Artikel ini akan memperkenalkan cara menggunakan MySQL dan Python untuk membangunkan sistem soal jawab dalam talian yang mudah, dan menyediakan contoh kod khusus.

1. Konfigurasi persekitaran
Sebelum pembangunan, kita perlu melakukan beberapa konfigurasi persekitaran. Pertama, anda perlu memasang pangkalan data MySQL dan mencipta pangkalan data untuk menyimpan maklumat soal jawab. Kedua, anda perlu memasang perpustakaan MySQL Python untuk menyambung dan mengendalikan pangkalan data MySQL. Akhir sekali, kita juga perlu memasang perpustakaan Python Flask untuk membangunkan aplikasi web.

2. Reka bentuk pangkalan data
Sebelum mula menulis kod, kita perlu mereka bentuk struktur pangkalan data yang sesuai untuk menyimpan maklumat soal jawab. Sistem soalan dan jawapan yang ringkas mengandungi sekurang-kurangnya dua jadual: satu untuk menyimpan maklumat soalan dan satu untuk menyimpan maklumat jawapan. Berikut ialah contoh reka bentuk struktur pangkalan data yang dipermudahkan:

  1. Jadual soalan (soalan):

    • id: ID soalan
    • tajuk: tajuk soalan
    • kandungan: kandungan soalan
    • masa penciptaan
  2. : masa penciptaan soalan:

    Jadual jawapan (jawapan):

    • id: ID jawapan
    • question_id: ID soalan
    • kandungan: kandungan jawapan
    • create_time: masa penciptaan jawapan

kod menulis

, kita mulakan kod seterusnya. sistem soal jawab dalam talian yang mudah. Pertama, kami perlu mengimport perpustakaan yang diperlukan dan membuat sambungan pangkalan data:

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"
)

Kemudian, kami mencipta antara muka untuk mendapatkan senarai soalan:

@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)

Seterusnya, kami mencipta antara muka untuk menyiarkan soalan:

@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"})

Akhir sekali, Kami cipta antara muka untuk mendapatkan senarai jawapan kepada soalan tertentu:

@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. Jalankan ujian

Selepas menulis kod, kami boleh menjalankan ujian untuk mengesahkan sama ada sistem berfungsi dengan betul. Mula-mula, kita perlu memulakan aplikasi Flask:

if __name__ == "__main__":
    app.run()
/questions接口获取问题列表,使用POST方法请求/questions接口发布问题,使用GET方法请求/questions/<question_id>/answers</question_id> Kemudian, kita boleh menggunakan alatan seperti Postman untuk menguji antara muka yang kita buat. Contohnya, anda boleh menggunakan kaedah GET untuk meminta antara muka

untuk mendapatkan senarai jawapan kepada soalan tertentu.

Melalui langkah di atas, kami telah berjaya membangunkan sistem soal jawab dalam talian yang mudah menggunakan MySQL dan Python.


Ringkasan

Artikel ini memperkenalkan cara menggunakan MySQL dan Python untuk membangunkan sistem soal jawab dalam talian yang mudah, dan menyediakan contoh kod khusus. Sudah tentu, ini hanyalah contoh mudah, dan sistem soal jawab dalam talian yang sebenar masih mempunyai banyak fungsi dan butiran yang perlu dipertimbangkan dan diperbaiki. Saya harap artikel ini akan membantu orang yang baru dalam pembangunan sistem soal jawab dalam talian dan boleh digunakan sebagai titik permulaan untuk kerja pembangunan yang lebih kompleks dan lengkap. 🎜

Atas ialah kandungan terperinci Bagaimana untuk membangunkan sistem soal jawab dalam talian yang mudah menggunakan MySQL dan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn