在南京这样一个充满活力的城市,企业对于实习生的需求日益增加。为了提高管理效率,我们决定开发一套南京实习生管理系统。该系统旨在简化实习生招聘、管理和培训流程。
首先,我们需要设计数据库结构。以下是一个简单的MySQL数据库创建脚本示例:
CREATE DATABASE InternshipSystem;
USE InternshipSystem;
CREATE TABLE Companies (
CompanyID INT AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(255) NOT NULL,
Address VARCHAR(255),
ContactPerson VARCHAR(255)
);
CREATE TABLE Interns (
InternID INT AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(255) NOT NULL,
Email VARCHAR(255) UNIQUE NOT NULL,
PhoneNumber VARCHAR(20),
Major VARCHAR(255)
);
CREATE TABLE Applications (
ApplicationID INT AUTO_INCREMENT PRIMARY KEY,
InternID INT,
CompanyID INT,
Position VARCHAR(255),
Status ENUM('Pending', 'Accepted', 'Rejected') DEFAULT 'Pending',
FOREIGN KEY (InternID) REFERENCES Interns(InternID),
FOREIGN KEY (CompanyID) REFERENCES Companies(CompanyID)
);
接下来,我们将使用Flask框架构建一个简单的Web应用来展示这个数据库。以下是Flask应用的基本结构:
from flask import Flask, render_template, request
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@localhost/InternshipSystem'
db = SQLAlchemy(app)
class Company(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(255), nullable=False)
address = db.Column(db.String(255))
contact_person = db.Column(db.String(255))
@app.route('/')
def index():
companies = Company.query.all()
return render_template('index.html', companies=companies)
if __name__ == '__main__':
app.run(debug=True)

这样,我们就有了一个基本的南京实习生管理系统,可以用来管理公司的信息以及实习生的申请状态。
